time="2024-08-02T16:23:37Z" level=warning msg="/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/integration-test/docker-compose.yaml: `version` is obsolete" Container integration-test-device-1 Creating Container integration-test-federation-1 Creating Container integration-test-authentication-1 Creating Container integration-test-gateway-1 Creating Container integration-test-authorization-1 Creating Container integration-test-forwarding-1 Creating Container integration-test-experiment-1 Creating Container integration-test-gateway-1 Created Container integration-test-forwarding-1 Created Container integration-test-federation-1 Created Container integration-test-device-1 Created Container integration-test-experiment-1 Created Container integration-test-authentication-1 Created Container integration-test-authorization-1 Created Attaching to authentication-1, authorization-1, device-1, experiment-1, federation-1, forwarding-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/forwarding_service.conf to /etc/nginx/forwarding_service.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 forwarding-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} forwarding-1 | {"level":"info","message":"Forwarding Service started successfully"} gateway-1 | 2024/08/02 16:24:22 [error] 64#64: *1 connect() failed (111: Connection refused) while connecting to upstream, client: 127.0.0.1, server: , request: "HEAD /auth/status HTTP/1.1", upstream: "http://127.0.0.1:3000/auth/status", host: "localhost" gateway-1 | {"time_local":"02/Aug/2024:16:24:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /auth/status HTTP/1.1","status": "502","body_bytes_sent":"0","request_time":"0.000","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"516ebb416afbcda9eba2fd85fc8ca012"} authorization-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} federation-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-08-02T16:24:23Z"} authentication-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} device-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} experiment-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"} experiment-1 | {"level":"info","message":"Experiment Service started successfully"} authorization-1 | {"client_addr":"127.0.0.1:35638","level":"info","msg":"Received request.","req_id":1,"req_method":"GET","req_path":"/","subsystem":"opa","time":"2024-08-02T16:24:23Z"} authorization-1 | {"client_addr":"127.0.0.1:35638","level":"info","msg":"Sent response.","req_id":1,"req_method":"GET","req_path":"/","resp_bytes":1424,"resp_duration":0.321446,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:23Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"๐Ÿงช experimental features enabled: []","subsystem":"openfga","timestamp":1722615863.755191} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"using 'memory' storage engine","subsystem":"openfga","timestamp":1722615863.7552888} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"warn","message":"authentication is disabled","subsystem":"openfga","timestamp":1722615863.7553213} 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":1722615863.7553422} 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":1722615863.7553594} 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":1722615863.7554097,"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":1722615863.7559254} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"HTTP server listening on 'localhost:3013'...","subsystem":"openfga","timestamp":1722615863.7568524} 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:37634","raw_request":{"name":"crosslab"},"raw_response":{"created_at":"2024-08-02T16:24:23.780381022Z","id":"01J49YG6F4WKHZEGNF2PA5V53S","name":"crosslab","updated_at":"2024-08-02T16:24:23.780381022Z"},"request_id":"b918f035-fd08-460a-bd47-d22ae72555ca","subsystem":"openfga","timestamp":1722615863.7805088} 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:37634","raw_request":{"schema_version":"1.1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_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":"01J49YG6GDSE9D7SVDNXCAF55E"},"request_id":"3b7c29c3-ddbe-462d-9732-7f43cc527b60","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615863.8211827} authorization-1 | {"client_addr":"127.0.0.1:35638","level":"info","msg":"Received request.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","subsystem":"opa","time":"2024-08-02T16:24:23Z"} authorization-1 | {"client_addr":"127.0.0.1:35638","level":"info","msg":"Sent response.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","resp_bytes":0,"resp_duration":0.308669,"resp_status":204,"subsystem":"opa","time":"2024-08-02T16:24:23Z"} authorization-1 | {"level":"info","message":"Authorization Service started successfully"} authorization-1 | {"current_version":"0.54.0","download_opa":"https://openpolicyagent.org/downloads/v0.67.0/opa_linux_amd64","latest_version":"0.67.0","level":"info","msg":"OPA is out of date.","release_notes":"https://github.com/open-policy-agent/opa/releases/tag/v0.67.0","subsystem":"opa","time":"2024-08-02T16:24:23Z"} gateway-1 | {"time_local":"02/Aug/2024:16:24:27 +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.017","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"bb22b76427bf68e0fc09aeb5c2c72f29"} authentication-1 | {"level":"info","message":"HEAD /auth/status 200 12ms","method":"HEAD","requestID":"bb22b76427bf68e0fc09aeb5c2c72f29","responseTime":12,"status":200,"url":"/auth/status"} gateway-1 | {"time_local":"02/Aug/2024:16:24:27 +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":"78b83fd1073c1e87afe410e7c9b24e6b"} device-1 | {"level":"info","message":"HEAD /device/status 200 8ms","method":"HEAD","requestID":"b043e170-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/device/status"} gateway-1 | {"time_local":"02/Aug/2024:16:24:27 +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.012","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"aeee0339a66e7f424366d138f574c71d"} authorization-1 | {"level":"info","message":"HEAD /authorization/status 200 7ms","method":"HEAD","requestID":"aeee0339a66e7f424366d138f574c71d","responseTime":7,"status":200,"url":"/authorization/status"} gateway-1 | {"time_local":"02/Aug/2024:16:24:27 +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.016","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"e932199778f0b32aa0d2b110c92726f8"} federation-1 | {"level":"info","message":"HEAD /federation/status 200 11ms","method":"HEAD","requestID":"b049d4e0-50eb-11ef-b888-f32e94eb41bf","responseTime":11,"status":200,"url":"/federation/status"} gateway-1 | {"time_local":"02/Aug/2024:16:24:27 +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.015","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"bd6f77c5fc0dedf251a13c4c7ae43af6"} experiment-1 | {"level":"info","message":"HEAD /experiment/status 200 10ms","method":"HEAD","requestID":"b04d5750-50eb-11ef-9a85-4b3fa1cc6aac","responseTime":10,"status":200,"url":"/experiment/status"} gateway-1 | {"time_local":"02/Aug/2024:16:24:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /forwarding/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.013","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"7ee3d96cb3e472cfed9fe912b56bfb82"} forwarding-1 | {"level":"info","message":"HEAD /forwarding/status 200 8ms","method":"HEAD","requestID":"b050b2b0-50eb-11ef-a432-47ab85bb6d58","responseTime":8,"status":200,"url":"/forwarding/status"} gateway-1 | {"time_local":"02/Aug/2024:16:24:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /login HTTP/1.1","status": "201","body_bytes_sent":"88","request_time":"0.157","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1d27e4b925d25ec68ba32577c7c1e8bf"} authentication-1 | {"level":"info","message":"POST /login 201 138ms","method":"POST","requestID":"1d27e4b925d25ec68ba32577c7c1e8bf","responseTime":138,"status":201,"url":"/login"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3MX0.SrWUUncK5pzfi7gu-lp9hsCAYNzquSCSlyrqW7FSLbU","level":"info","message":"auth send jwt","requestID":"bb5586338cbb99d11790ab3de8eb9398"} authentication-1 | {"level":"info","message":"GET /auth 200 94ms","method":"GET","requestID":"bb5586338cbb99d11790ab3de8eb9398","responseTime":94,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"bb5586338cbb99d11790ab3de8eb9398"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.604664,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bb5586338cbb99d11790ab3de8eb9398","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615871,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3MX0.SrWUUncK5pzfi7gu-lp9hsCAYNzquSCSlyrqW7FSLbU"} authorization-1 | {"level":"info","message":"POST /authorize 200 21ms","method":"POST","requestID":"bb5586338cbb99d11790ab3de8eb9398","responseTime":21,"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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63d99a93-0524-464f-b6fe-45579a5bc596","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"53753c7b-3973-4043-85ff-b5b04bafbf65","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615871.5139375} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"bb5586338cbb99d11790ab3de8eb9398","responseTime":9,"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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"44c3bba7-6aaf-4248-8905-876aa7553703","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615871.5284727} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"bb5586338cbb99d11790ab3de8eb9398","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63d99a93-0524-464f-b6fe-45579a5bc596","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"d648bdfe-d4b4-4107-9fe5-02160bac5c94","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615871.546202} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8042c301-3c2a-4ed7-9c62-3db1fc6eb0c7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615871.5467594} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"bb5586338cbb99d11790ab3de8eb9398","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63d99a93-0524-464f-b6fe-45579a5bc596","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63d99a93-0524-464f-b6fe-45579a5bc596","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:31.546184579Z"}]},"request_id":"68529ab3-2f9d-421a-a44a-3199e01507bf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615871.5553901} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"bb5586338cbb99d11790ab3de8eb9398","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"bb5586338cbb99d11790ab3de8eb9398"} gateway-1 | {"time_local":"02/Aug/2024:16:24:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.301","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bb5586338cbb99d11790ab3de8eb9398"} device-1 | {"level":"info","message":"POST /devices? 201 196ms","method":"POST","requestID":"bb5586338cbb99d11790ab3de8eb9398","responseTime":196,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3MX0.SrWUUncK5pzfi7gu-lp9hsCAYNzquSCSlyrqW7FSLbU","level":"info","message":"auth send jwt","requestID":"bf484bb51dd0d1427ba11032ca2877dc"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"bf484bb51dd0d1427ba11032ca2877dc","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"bf484bb51dd0d1427ba11032ca2877dc"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.019632,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bf484bb51dd0d1427ba11032ca2877dc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615871,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3MX0.SrWUUncK5pzfi7gu-lp9hsCAYNzquSCSlyrqW7FSLbU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bf484bb51dd0d1427ba11032ca2877dc","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0788cfee-a543-4835-a238-16a774848502","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c936cb58-eb7c-417d-9ba0-505b3c203d53","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615871.618632} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bf484bb51dd0d1427ba11032ca2877dc","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5e3b6336-892a-458c-9ed0-acd5d01aa882","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615871.6289032} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"bf484bb51dd0d1427ba11032ca2877dc","responseTime":8,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0788cfee-a543-4835-a238-16a774848502","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"f79a192b-6a7c-443b-97cf-90bdda2e00ba","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615871.642035} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4a43db3c-fe82-4fb9-b69e-e4e073d4eedb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615871.642355} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"bf484bb51dd0d1427ba11032ca2877dc","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0788cfee-a543-4835-a238-16a774848502","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0788cfee-a543-4835-a238-16a774848502","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:31.642018312Z"}]},"request_id":"e9a6db43-eb97-455a-8b7b-c8fd7fb4fc42","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615871.652346} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"bf484bb51dd0d1427ba11032ca2877dc","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"bf484bb51dd0d1427ba11032ca2877dc"} gateway-1 | {"time_local":"02/Aug/2024:16:24:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.074","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bf484bb51dd0d1427ba11032ca2877dc"} device-1 | {"level":"info","message":"POST /devices? 201 66ms","method":"POST","requestID":"bf484bb51dd0d1427ba11032ca2877dc","responseTime":66,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b54eff19c128a34b49270d7e34a7a2a7","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":"b54eff19c128a34b49270d7e34a7a2a7","responseTime":3,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:24:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/63d99a93-0524-464f-b6fe-45579a5bc596/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.008","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":"b54eff19c128a34b49270d7e34a7a2a7"} device-1 | {"level":"info","message":"OPTIONS /devices/63d99a93-0524-464f-b6fe-45579a5bc596/websocket 200 2ms","method":"OPTIONS","requestID":"b54eff19c128a34b49270d7e34a7a2a7","responseTime":2,"status":200,"url":"/devices/63d99a93-0524-464f-b6fe-45579a5bc596/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c6c5d24dc8b707e4277653b90b7563a7","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":"c6c5d24dc8b707e4277653b90b7563a7","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:24:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/0788cfee-a543-4835-a238-16a774848502/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":"c6c5d24dc8b707e4277653b90b7563a7"} device-1 | {"level":"info","message":"OPTIONS /devices/0788cfee-a543-4835-a238-16a774848502/websocket 200 1ms","method":"OPTIONS","requestID":"c6c5d24dc8b707e4277653b90b7563a7","responseTime":1,"status":200,"url":"/devices/0788cfee-a543-4835-a238-16a774848502/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3M30.peAEw-lqC7kEwnQIImoOUA4nN7C9h6T2Vv6uMTJXljI","level":"info","message":"auth send jwt","requestID":"422099845eb8b7ad71bc069fbcbf84ce"} authentication-1 | {"level":"info","message":"GET /auth 200 12ms","method":"GET","requestID":"422099845eb8b7ad71bc069fbcbf84ce","responseTime":12,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"422099845eb8b7ad71bc069fbcbf84ce"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3M30.peAEw-lqC7kEwnQIImoOUA4nN7C9h6T2Vv6uMTJXljI","level":"info","message":"auth send jwt","requestID":"74de08b838303a848c342e2701085159"} authentication-1 | {"level":"info","message":"GET /auth 200 12ms","method":"GET","requestID":"74de08b838303a848c342e2701085159","responseTime":12,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"74de08b838303a848c342e2701085159"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.338061,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"422099845eb8b7ad71bc069fbcbf84ce","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615873,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3M30.peAEw-lqC7kEwnQIImoOUA4nN7C9h6T2Vv6uMTJXljI"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"422099845eb8b7ad71bc069fbcbf84ce","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58418","level":"info","msg":"Received request.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58418","level":"info","msg":"Sent response.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.152455,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0788cfee-a543-4835-a238-16a774848502","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"74de08b838303a848c342e2701085159","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0788cfee-a543-4835-a238-16a774848502","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615873,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3M30.peAEw-lqC7kEwnQIImoOUA4nN7C9h6T2Vv6uMTJXljI"} authorization-1 | {"level":"info","message":"POST /authorize 200 18ms","method":"POST","requestID":"74de08b838303a848c342e2701085159","responseTime":19,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"74de08b838303a848c342e2701085159"} gateway-1 | {"time_local":"02/Aug/2024:16:24:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/0788cfee-a543-4835-a238-16a774848502/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.076","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":"74de08b838303a848c342e2701085159"} device-1 | {"level":"info","message":"POST /devices/0788cfee-a543-4835-a238-16a774848502/websocket 200 59ms","method":"POST","requestID":"74de08b838303a848c342e2701085159","responseTime":59,"status":200,"url":"/devices/0788cfee-a543-4835-a238-16a774848502/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"422099845eb8b7ad71bc069fbcbf84ce"} gateway-1 | {"time_local":"02/Aug/2024:16:24:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/63d99a93-0524-464f-b6fe-45579a5bc596/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.083","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":"422099845eb8b7ad71bc069fbcbf84ce"} device-1 | {"level":"info","message":"POST /devices/63d99a93-0524-464f-b6fe-45579a5bc596/websocket 200 67ms","method":"POST","requestID":"422099845eb8b7ad71bc069fbcbf84ce","responseTime":67,"status":200,"url":"/devices/63d99a93-0524-464f-b6fe-45579a5bc596/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/0788cfee-a543-4835-a238-16a774848502' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f1af5d06b6dc0c43f3f91de030b11d05","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":"f1af5d06b6dc0c43f3f91de030b11d05","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"369cbc245746a100ae54730ac03616d6","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":"02/Aug/2024:16:24:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/63d99a93-0524-464f-b6fe-45579a5bc596? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.007","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":"f1af5d06b6dc0c43f3f91de030b11d05"} device-1 | {"level":"info","message":"OPTIONS /devices/63d99a93-0524-464f-b6fe-45579a5bc596? 200 1ms","method":"OPTIONS","requestID":"f1af5d06b6dc0c43f3f91de030b11d05","responseTime":1,"status":200,"url":"/devices/63d99a93-0524-464f-b6fe-45579a5bc596?"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"369cbc245746a100ae54730ac03616d6","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:24:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/0788cfee-a543-4835-a238-16a774848502? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.008","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":"369cbc245746a100ae54730ac03616d6"} device-1 | {"level":"info","message":"OPTIONS /devices/0788cfee-a543-4835-a238-16a774848502? 200 1ms","method":"OPTIONS","requestID":"369cbc245746a100ae54730ac03616d6","responseTime":1,"status":200,"url":"/devices/0788cfee-a543-4835-a238-16a774848502?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3M30.peAEw-lqC7kEwnQIImoOUA4nN7C9h6T2Vv6uMTJXljI","level":"info","message":"auth send jwt","requestID":"441c22beb1f660e373323b6825ce160f"} authentication-1 | {"level":"info","message":"GET /auth 200 11ms","method":"GET","requestID":"441c22beb1f660e373323b6825ce160f","responseTime":11,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3M30.peAEw-lqC7kEwnQIImoOUA4nN7C9h6T2Vv6uMTJXljI","level":"info","message":"auth send jwt","requestID":"737d5ff833063f7490828a962e4d0080"} authentication-1 | {"level":"info","message":"GET /auth 200 11ms","method":"GET","requestID":"737d5ff833063f7490828a962e4d0080","responseTime":11,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"441c22beb1f660e373323b6825ce160f"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"737d5ff833063f7490828a962e4d0080"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.987831,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58418","level":"info","msg":"Received request.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"441c22beb1f660e373323b6825ce160f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615873,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3M30.peAEw-lqC7kEwnQIImoOUA4nN7C9h6T2Vv6uMTJXljI"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"441c22beb1f660e373323b6825ce160f","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58418","level":"info","msg":"Sent response.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.276647,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0788cfee-a543-4835-a238-16a774848502","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"737d5ff833063f7490828a962e4d0080","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0788cfee-a543-4835-a238-16a774848502","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615873,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3M30.peAEw-lqC7kEwnQIImoOUA4nN7C9h6T2Vv6uMTJXljI"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"737d5ff833063f7490828a962e4d0080","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63d99a93-0524-464f-b6fe-45579a5bc596","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63d99a93-0524-464f-b6fe-45579a5bc596","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:31.546184579Z"}]},"request_id":"6ca42280-f535-40d5-bb52-245c71e0cff4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615873.9000108} authorization-1 | {"level":"info","message":"POST /relations/query 200 11ms","method":"POST","requestID":"441c22beb1f660e373323b6825ce160f","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0788cfee-a543-4835-a238-16a774848502","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0788cfee-a543-4835-a238-16a774848502","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:31.642018312Z"}]},"request_id":"7e53cb04-a0a3-4a74-a2f7-b6247ed3fe66","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615873.9044728} authorization-1 | {"level":"info","message":"POST /relations/query 200 12ms","method":"POST","requestID":"737d5ff833063f7490828a962e4d0080","responseTime":12,"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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"22a8bebd-5937-4be6-a73e-8ce9bd391ec0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615873.9195392} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"441c22beb1f660e373323b6825ce160f","responseTime":10,"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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5fa3883f-09d0-4780-839b-db5566cb2a32","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615873.9235826} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"737d5ff833063f7490828a962e4d0080","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0788cfee-a543-4835-a238-16a774848502","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0788cfee-a543-4835-a238-16a774848502","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:31.642018312Z"}]},"request_id":"c3eee79c-46e0-4c48-b632-c52e26ee33b8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615873.9298391} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"737d5ff833063f7490828a962e4d0080","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"737d5ff833063f7490828a962e4d0080"} gateway-1 | {"time_local":"02/Aug/2024:16:24:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/0788cfee-a543-4835-a238-16a774848502? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.097","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":"737d5ff833063f7490828a962e4d0080"} device-1 | {"level":"info","message":"PATCH /devices/0788cfee-a543-4835-a238-16a774848502? 200 72ms","method":"PATCH","requestID":"737d5ff833063f7490828a962e4d0080","responseTime":72,"status":200,"url":"/devices/0788cfee-a543-4835-a238-16a774848502?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63d99a93-0524-464f-b6fe-45579a5bc596","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63d99a93-0524-464f-b6fe-45579a5bc596","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:31.546184579Z"}]},"request_id":"5226dcf4-b4c7-4a46-9aae-e15aa2edc23f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615873.9487772} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"441c22beb1f660e373323b6825ce160f","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"441c22beb1f660e373323b6825ce160f"} gateway-1 | {"time_local":"02/Aug/2024:16:24:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/63d99a93-0524-464f-b6fe-45579a5bc596? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.111","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":"441c22beb1f660e373323b6825ce160f"} device-1 | {"level":"info","message":"PATCH /devices/63d99a93-0524-464f-b6fe-45579a5bc596? 200 97ms","method":"PATCH","requestID":"441c22beb1f660e373323b6825ce160f","responseTime":97,"status":200,"url":"/devices/63d99a93-0524-464f-b6fe-45579a5bc596?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3M30.peAEw-lqC7kEwnQIImoOUA4nN7C9h6T2Vv6uMTJXljI","level":"info","message":"auth send jwt","requestID":"6f4ac47938c1a63540f0a63e13f8b747"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6f4ac47938c1a63540f0a63e13f8b747","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6f4ac47938c1a63540f0a63e13f8b747"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.789737,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"6f4ac47938c1a63540f0a63e13f8b747","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615873,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3M30.peAEw-lqC7kEwnQIImoOUA4nN7C9h6T2Vv6uMTJXljI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6f4ac47938c1a63540f0a63e13f8b747","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63d99a93-0524-464f-b6fe-45579a5bc596","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63d99a93-0524-464f-b6fe-45579a5bc596","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:31.546184579Z"}]},"request_id":"59a5518e-e001-40cb-ac24-96d0822f5709","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615873.9849072} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"6f4ac47938c1a63540f0a63e13f8b747","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6f4ac47938c1a63540f0a63e13f8b747"} gateway-1 | {"time_local":"02/Aug/2024:16:24:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/63d99a93-0524-464f-b6fe-45579a5bc596? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.038","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6f4ac47938c1a63540f0a63e13f8b747"} device-1 | {"level":"info","message":"GET /devices/63d99a93-0524-464f-b6fe-45579a5bc596? 200 30ms","method":"GET","requestID":"6f4ac47938c1a63540f0a63e13f8b747","responseTime":30,"status":200,"url":"/devices/63d99a93-0524-464f-b6fe-45579a5bc596?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NH0.dLJ1WT7pzpS6ug6S8389g7jViOD3hV4X1hDS5RlYZZ4","level":"info","message":"auth send jwt","requestID":"76876b0a5952061cc8225e2e5301feac"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"76876b0a5952061cc8225e2e5301feac","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"76876b0a5952061cc8225e2e5301feac"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.340918,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0788cfee-a543-4835-a238-16a774848502","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"76876b0a5952061cc8225e2e5301feac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0788cfee-a543-4835-a238-16a774848502","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615874,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NH0.dLJ1WT7pzpS6ug6S8389g7jViOD3hV4X1hDS5RlYZZ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"76876b0a5952061cc8225e2e5301feac","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0788cfee-a543-4835-a238-16a774848502","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0788cfee-a543-4835-a238-16a774848502","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:31.642018312Z"}]},"request_id":"3a12e878-ca97-4ab8-ac3a-95b40b3aacc6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.0269012} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"76876b0a5952061cc8225e2e5301feac","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"76876b0a5952061cc8225e2e5301feac"} gateway-1 | {"time_local":"02/Aug/2024:16:24:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0788cfee-a543-4835-a238-16a774848502? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.032","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"76876b0a5952061cc8225e2e5301feac"} device-1 | {"level":"info","message":"GET /devices/0788cfee-a543-4835-a238-16a774848502? 200 24ms","method":"GET","requestID":"76876b0a5952061cc8225e2e5301feac","responseTime":24,"status":200,"url":"/devices/0788cfee-a543-4835-a238-16a774848502?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NH0.dLJ1WT7pzpS6ug6S8389g7jViOD3hV4X1hDS5RlYZZ4","level":"info","message":"auth send jwt","requestID":"39b44a79a993a62bcf8901e2da03ba2e"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"39b44a79a993a62bcf8901e2da03ba2e","responseTime":7,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"39b44a79a993a62bcf8901e2da03ba2e"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.741799,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"39b44a79a993a62bcf8901e2da03ba2e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615874,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NH0.dLJ1WT7pzpS6ug6S8389g7jViOD3hV4X1hDS5RlYZZ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"39b44a79a993a62bcf8901e2da03ba2e","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0"},"level":"info","message":"Attempting to run experiment","requestID":"39b44a79a993a62bcf8901e2da03ba2e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0"},"level":"info","message":"Attempting to book experiment","requestID":"39b44a79a993a62bcf8901e2da03ba2e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0"},"level":"info","message":"Successfully booked experiment","requestID":"39b44a79a993a62bcf8901e2da03ba2e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b434cab0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b434f1c0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.653307,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58418","level":"info","msg":"Received request.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b434cab0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615874,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NH0.dLJ1WT7pzpS6ug6S8389g7jViOD3hV4X1hDS5RlYZZ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b434cab0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58418","level":"info","msg":"Sent response.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.656741,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0788cfee-a543-4835-a238-16a774848502","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b434f1c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0788cfee-a543-4835-a238-16a774848502","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615874,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NH0.dLJ1WT7pzpS6ug6S8389g7jViOD3hV4X1hDS5RlYZZ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b434f1c0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63d99a93-0524-464f-b6fe-45579a5bc596","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63d99a93-0524-464f-b6fe-45579a5bc596","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:31.546184579Z"}]},"request_id":"f6506534-a968-4d94-98dc-c8f3ae9a3dc8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.2792568} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b434cab0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0788cfee-a543-4835-a238-16a774848502","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0788cfee-a543-4835-a238-16a774848502","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:31.642018312Z"}]},"request_id":"9685aeba-5645-405f-843d-71b15275c48b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.28126} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b434f1c0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b434cab0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/63d99a93-0524-464f-b6fe-45579a5bc596? 200 20ms","method":"GET","requestID":"b434cab0-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/63d99a93-0524-464f-b6fe-45579a5bc596?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b434f1c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/0788cfee-a543-4835-a238-16a774848502? 200 20ms","method":"GET","requestID":"b434f1c0-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/0788cfee-a543-4835-a238-16a774848502?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0"},"level":"info","message":"Setting up experiment","requestID":"39b44a79a993a62bcf8901e2da03ba2e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"39b44a79a993a62bcf8901e2da03ba2e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0"},"level":"info","message":"Successfully locked booking for experiment","requestID":"39b44a79a993a62bcf8901e2da03ba2e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"39b44a79a993a62bcf8901e2da03ba2e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"39b44a79a993a62bcf8901e2da03ba2e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0"},"level":"info","message":"Attempting to update booking for experiment","requestID":"39b44a79a993a62bcf8901e2da03ba2e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0"},"level":"info","message":"Successfully updated booking for experiment","requestID":"39b44a79a993a62bcf8901e2da03ba2e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0"},"level":"info","message":"Successfully set up experiment","requestID":"39b44a79a993a62bcf8901e2da03ba2e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b443bed0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b4440cf0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.994787,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58418","level":"info","msg":"Received request.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0"},"level":"info","message":"Successfully running experiment","requestID":"39b44a79a993a62bcf8901e2da03ba2e"} authorization-1 | {"client_addr":"127.0.0.1:58418","level":"info","msg":"Sent response.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.651324,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b4445b10-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b443bed0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615874,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NH0.dLJ1WT7pzpS6ug6S8389g7jViOD3hV4X1hDS5RlYZZ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"b443bed0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0788cfee-a543-4835-a238-16a774848502","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b4440cf0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0788cfee-a543-4835-a238-16a774848502","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615874,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NH0.dLJ1WT7pzpS6ug6S8389g7jViOD3hV4X1hDS5RlYZZ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"b4440cf0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.052851,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63d99a93-0524-464f-b6fe-45579a5bc596","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bcac2958-dd19-4449-9053-3c8a8e450cf6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.3864176} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0788cfee-a543-4835-a238-16a774848502","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0788cfee-a543-4835-a238-16a774848502","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:31.642018312Z"}]},"request_id":"4c261b3b-925c-4469-ad6e-2c53640033cd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.3878374} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b4445b10-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596","object_type":"device","rebac_allow":false,"scope_allow":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":"b4445b10-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"b4440cf0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63d99a93-0524-464f-b6fe-45579a5bc596","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63d99a93-0524-464f-b6fe-45579a5bc596","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:31.546184579Z"}]},"request_id":"06593193-0f12-438b-a3dd-11ae224b8411","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.3935966} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"b443bed0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"1caca520-4bd5-4d80-8550-f3117205df45","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.3989072} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b4445b10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/63d99a93-0524-464f-b6fe-45579a5bc596/signaling 200 35ms","method":"POST","requestID":"b4445b10-50eb-11ef-8434-2f6d198c7397","responseTime":35,"status":200,"url":"/devices/63d99a93-0524-464f-b6fe-45579a5bc596/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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"87c1504b-4b4c-42f4-8cb5-d1867ecc30e5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.4064739} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b4440cf0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"39b44a79a993a62bcf8901e2da03ba2e","responseTime":27,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/0788cfee-a543-4835-a238-16a774848502? 200 43ms","method":"GET","requestID":"b4440cf0-50eb-11ef-8434-2f6d198c7397","responseTime":43,"status":200,"url":"/devices/0788cfee-a543-4835-a238-16a774848502?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b44ac3b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b443bed0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/63d99a93-0524-464f-b6fe-45579a5bc596? 200 49ms","method":"GET","requestID":"b443bed0-50eb-11ef-8434-2f6d198c7397","responseTime":49,"status":200,"url":"/devices/63d99a93-0524-464f-b6fe-45579a5bc596?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0788cfee-a543-4835-a238-16a774848502","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"84d21f6d-ed7e-4859-9f2c-7473b3d1854b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.418188} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.486344,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0788cfee-a543-4835-a238-16a774848502","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b44ac3b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0788cfee-a543-4835-a238-16a774848502","object_type":"device","rebac_allow":false,"scope_allow":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":"b44ac3b0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"39b44a79a993a62bcf8901e2da03ba2e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b44c9870-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b44ac3b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/0788cfee-a543-4835-a238-16a774848502/signaling 200 15ms","method":"POST","requestID":"b44ac3b0-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/0788cfee-a543-4835-a238-16a774848502/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} gateway-1 | {"time_local":"02/Aug/2024:16:24:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"808","request_time":"0.384","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"39b44a79a993a62bcf8901e2da03ba2e"} experiment-1 | {"level":"info","message":"POST /experiments? 201 352ms","method":"POST","requestID":"39b44a79a993a62bcf8901e2da03ba2e","responseTime":352,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63d99a93-0524-464f-b6fe-45579a5bc596","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"34f69448-841c-4c7b-8634-f04cbab6b2a1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.4288487} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.840576,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b44c9870-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596","object_type":"device","rebac_allow":false,"scope_allow":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":"b44c9870-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b44c9870-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/63d99a93-0524-464f-b6fe-45579a5bc596/signaling 200 12ms","method":"POST","requestID":"b44c9870-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/63d99a93-0524-464f-b6fe-45579a5bc596/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NH0.dLJ1WT7pzpS6ug6S8389g7jViOD3hV4X1hDS5RlYZZ4","level":"info","message":"auth send jwt","requestID":"36c5d37d3938a792dbf55081a9266168"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"36c5d37d3938a792dbf55081a9266168","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"36c5d37d3938a792dbf55081a9266168"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b44f5790-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.725059,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"36c5d37d3938a792dbf55081a9266168","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615874,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NH0.dLJ1WT7pzpS6ug6S8389g7jViOD3hV4X1hDS5RlYZZ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"36c5d37d3938a792dbf55081a9266168","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.870075,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0788cfee-a543-4835-a238-16a774848502","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c9facf83-c759-4675-ae5c-2db6996d4903","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.447985} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0788cfee-a543-4835-a238-16a774848502","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b44f5790-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0788cfee-a543-4835-a238-16a774848502","object_type":"device","rebac_allow":false,"scope_allow":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":"b44f5790-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63d99a93-0524-464f-b6fe-45579a5bc596","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63d99a93-0524-464f-b6fe-45579a5bc596","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:31.546184579Z"}]},"request_id":"146e0173-8c30-454a-acc1-ed96be1c97bb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.4495623} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"36c5d37d3938a792dbf55081a9266168","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b44f5790-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/0788cfee-a543-4835-a238-16a774848502/signaling 200 14ms","method":"POST","requestID":"b44f5790-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/0788cfee-a543-4835-a238-16a774848502/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"36c5d37d3938a792dbf55081a9266168"} gateway-1 | {"time_local":"02/Aug/2024:16:24:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/63d99a93-0524-464f-b6fe-45579a5bc596? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"36c5d37d3938a792dbf55081a9266168"} device-1 | {"level":"info","message":"GET /devices/63d99a93-0524-464f-b6fe-45579a5bc596? 200 18ms","method":"GET","requestID":"36c5d37d3938a792dbf55081a9266168","responseTime":18,"status":200,"url":"/devices/63d99a93-0524-464f-b6fe-45579a5bc596?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"39b44a79a993a62bcf8901e2da03ba2e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b45216b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b45264d0-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NH0.dLJ1WT7pzpS6ug6S8389g7jViOD3hV4X1hDS5RlYZZ4","level":"info","message":"auth send jwt","requestID":"f12ae0fa9196f2a24168ffa611e529a1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f12ae0fa9196f2a24168ffa611e529a1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f12ae0fa9196f2a24168ffa611e529a1"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.709152,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58418","level":"info","msg":"Received request.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b45216b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615874,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NH0.dLJ1WT7pzpS6ug6S8389g7jViOD3hV4X1hDS5RlYZZ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b45216b0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58418","level":"info","msg":"Sent response.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.702041,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0788cfee-a543-4835-a238-16a774848502","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b45264d0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0788cfee-a543-4835-a238-16a774848502","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615874,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NH0.dLJ1WT7pzpS6ug6S8389g7jViOD3hV4X1hDS5RlYZZ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b45264d0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.583109,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0788cfee-a543-4835-a238-16a774848502","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f12ae0fa9196f2a24168ffa611e529a1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0788cfee-a543-4835-a238-16a774848502","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615874,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NH0.dLJ1WT7pzpS6ug6S8389g7jViOD3hV4X1hDS5RlYZZ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f12ae0fa9196f2a24168ffa611e529a1","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63d99a93-0524-464f-b6fe-45579a5bc596","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63d99a93-0524-464f-b6fe-45579a5bc596","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:31.546184579Z"}]},"request_id":"d8627d58-4c24-494e-ac2b-8fe2644e20d8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.470932} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b45216b0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0788cfee-a543-4835-a238-16a774848502","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0788cfee-a543-4835-a238-16a774848502","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:31.642018312Z"}]},"request_id":"589216ad-1530-44b1-b97a-5953f9742bf3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.4731014} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b45216b0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b45264d0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0788cfee-a543-4835-a238-16a774848502","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0788cfee-a543-4835-a238-16a774848502","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:31.642018312Z"}]},"request_id":"243c66c2-0a24-4df3-879d-eb2a18cb5e08","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.475701} device-1 | {"level":"info","message":"GET /devices/63d99a93-0524-464f-b6fe-45579a5bc596? 200 17ms","method":"GET","requestID":"b45216b0-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/63d99a93-0524-464f-b6fe-45579a5bc596?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f12ae0fa9196f2a24168ffa611e529a1","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b45264d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/0788cfee-a543-4835-a238-16a774848502? 200 20ms","method":"GET","requestID":"b45264d0-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/0788cfee-a543-4835-a238-16a774848502?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f12ae0fa9196f2a24168ffa611e529a1"} gateway-1 | {"time_local":"02/Aug/2024:16:24:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0788cfee-a543-4835-a238-16a774848502? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f12ae0fa9196f2a24168ffa611e529a1"} device-1 | {"level":"info","message":"GET /devices/0788cfee-a543-4835-a238-16a774848502? 200 19ms","method":"GET","requestID":"f12ae0fa9196f2a24168ffa611e529a1","responseTime":19,"status":200,"url":"/devices/0788cfee-a543-4835-a238-16a774848502?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0"},"level":"info","message":"Building connection plan","requestID":"39b44a79a993a62bcf8901e2da03ba2e"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"f2080a01-b012-4054-9aa8-09b95b365a78"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"2eaf089a-f6c1-4d27-8f6a-33aa1c7d2c0f"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"ff4e8d98-3a51-4429-9792-4998e33dd458"}]},"level":"info","message":"Built pairwise service configurations","requestID":"39b44a79a993a62bcf8901e2da03ba2e"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/0788cfee-a543-4835-a238-16a774848502"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"39b44a79a993a62bcf8901e2da03ba2e"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"b456f8b0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.812903,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b456f8b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615874,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NH0.dLJ1WT7pzpS6ug6S8389g7jViOD3hV4X1hDS5RlYZZ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b456f8b0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"1e09b089-95b3-4c4c-93d5-328357d587fe","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.5149553} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"22165f33-39f3-4e8a-bfa2-44c151bf105d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.515214} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"b456f8b0-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"b456f8b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"b456f8b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/3fbbb4eb-297f-48e4-94be-b1633e353dc3'","requestID":"b456f8b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/3fbbb4eb-297f-48e4-94be-b1633e353dc3'","requestID":"b456f8b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"b456f8b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 44ms","method":"POST","requestID":"b456f8b0-50eb-11ef-8434-2f6d198c7397","responseTime":44,"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":"b456f8b0-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"39b44a79a993a62bcf8901e2da03ba2e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b463a2e0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63d99a93-0524-464f-b6fe-45579a5bc596","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dff4d674-0e55-4e14-8338-c5069fa850a3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.5801744} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.222523,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b463a2e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596","object_type":"device","rebac_allow":false,"scope_allow":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":"b463a2e0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b463a2e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/63d99a93-0524-464f-b6fe-45579a5bc596/signaling 200 11ms","method":"POST","requestID":"b463a2e0-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/63d99a93-0524-464f-b6fe-45579a5bc596/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b465c5c0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0788cfee-a543-4835-a238-16a774848502","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"261e3a8b-443c-4b81-8ea5-75d513a06657","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.5938857} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.577237,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0788cfee-a543-4835-a238-16a774848502","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b465c5c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0788cfee-a543-4835-a238-16a774848502","object_type":"device","rebac_allow":false,"scope_allow":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":"b465c5c0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b465c5c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/0788cfee-a543-4835-a238-16a774848502/signaling 200 10ms","method":"POST","requestID":"b465c5c0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/0788cfee-a543-4835-a238-16a774848502/signaling"} device-1 | {"device":"63d99a93-0524-464f-b6fe-45579a5bc596","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"63d99a93-0524-464f-b6fe-45579a5bc596","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"0788cfee-a543-4835-a238-16a774848502","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"0788cfee-a543-4835-a238-16a774848502","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 8601859511650540586 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:i2Sl\r\na=ice-pwd:A+EiEyklSTCTS0MwCXwCkYj6\r\na=ice-options:trickle\r\na=fingerprint:sha-256 2D:A1:96:DF:8C:B4:4C:8D:D6:81:CA:DC:AA:45:F9:0C:E5:8C:B4:02:A6:ED:4E:7F:1A:3E:8D:E9:3F:E1:0A:C8\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"0788cfee-a543-4835-a238-16a774848502","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 2622004170351774542 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:cRK9\r\na=ice-pwd:l1KQi8Vneu1PHd6jSHOKw5CO\r\na=ice-options:trickle\r\na=fingerprint:sha-256 86:11:3D:6F:D5:A1:3B:AB:E7:FD:A0:6B:BC:3B:DF:F0:B4:9E:19:8E:50:7F:65:7D:C2:FE:9E:8E:AB:B0:8F:88\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"63d99a93-0524-464f-b6fe-45579a5bc596","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:640428332 1 udp 2113937151 7103b2d6-3423-4a8a-bbe5-f7604f1316e5.local 40556 typ host generation 0 ufrag cRK9 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"63d99a93-0524-464f-b6fe-45579a5bc596","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596'"} device-1 | {"content":{"candidate":"candidate:779379435 1 udp 1677729535 141.24.211.56 40556 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag cRK9 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"63d99a93-0524-464f-b6fe-45579a5bc596","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:135296669 1 udp 2113937151 d31b9604-86bb-46a1-8373-17f9bc6ab0b2.local 40812 typ host generation 0 ufrag i2Sl network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0788cfee-a543-4835-a238-16a774848502","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596'"} device-1 | {"content":{"candidate":"candidate:4734298 1 udp 1677729535 141.24.211.56 40812 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag i2Sl network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0788cfee-a543-4835-a238-16a774848502","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/0788cfee-a543-4835-a238-16a774848502'"} device-1 | {"device":"0788cfee-a543-4835-a238-16a774848502","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"0788cfee-a543-4835-a238-16a774848502","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"63d99a93-0524-464f-b6fe-45579a5bc596","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"63d99a93-0524-464f-b6fe-45579a5bc596","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/3fbbb4eb-297f-48e4-94be-b1633e353dc3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3fbbb4eb-297f-48e4-94be-b1633e353dc3","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"0788cfee-a543-4835-a238-16a774848502","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"63d99a93-0524-464f-b6fe-45579a5bc596","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"63d99a93-0524-464f-b6fe-45579a5bc596","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9ec030cb92e543eee71ba892ee22e3a3","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":"9ec030cb92e543eee71ba892ee22e3a3","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/0788cfee-a543-4835-a238-16a774848502"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/3fbbb4eb-297f-48e4-94be-b1633e353dc3"}}},"level":"info","message":"received a callback","requestID":"9ec030cb92e543eee71ba892ee22e3a3"} device-1 | {"data":{"peerconnection":"3fbbb4eb-297f-48e4-94be-b1633e353dc3","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 14ms","method":"POST","requestID":"9ec030cb92e543eee71ba892ee22e3a3","responseTime":14,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24:34 +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.018","http_referrer":"","http_user_agent":"node-fetch","requestID":"9ec030cb92e543eee71ba892ee22e3a3"} device-1 | {"data":{"peerconnection":"3fbbb4eb-297f-48e4-94be-b1633e353dc3","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/3fbbb4eb-297f-48e4-94be-b1633e353dc3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3fbbb4eb-297f-48e4-94be-b1633e353dc3","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"af6f2821c2f56ab568898b8f35cad39c","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":"af6f2821c2f56ab568898b8f35cad39c","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0788cfee-a543-4835-a238-16a774848502"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/3fbbb4eb-297f-48e4-94be-b1633e353dc3"}}},"level":"info","message":"received a callback","requestID":"af6f2821c2f56ab568898b8f35cad39c"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"b47974d0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3fbbb4eb-297f-48e4-94be-b1633e353dc3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5a080150-92ef-4b2a-a775-169f28147ae9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.7224672} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.181718,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3fbbb4eb-297f-48e4-94be-b1633e353dc3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b47974d0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/3fbbb4eb-297f-48e4-94be-b1633e353dc3","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":"b47974d0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"b47974d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/3fbbb4eb-297f-48e4-94be-b1633e353dc3 200 10ms","method":"GET","requestID":"b47974d0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/peerconnections/3fbbb4eb-297f-48e4-94be-b1633e353dc3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 36ms","method":"POST","requestID":"af6f2821c2f56ab568898b8f35cad39c","responseTime":36,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24:34 +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":"af6f2821c2f56ab568898b8f35cad39c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b47e08b0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63d99a93-0524-464f-b6fe-45579a5bc596","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ebd96aac-4ede-4128-b6e6-d4d23d7c6296","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.7537189} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.335344,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b47e08b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596","object_type":"device","rebac_allow":false,"scope_allow":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":"b47e08b0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NH0.dLJ1WT7pzpS6ug6S8389g7jViOD3hV4X1hDS5RlYZZ4","level":"info","message":"auth send jwt","requestID":"6f0d7225478ed35f2e6cf7b8b2844cb1"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6f0d7225478ed35f2e6cf7b8b2844cb1","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b47e08b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/63d99a93-0524-464f-b6fe-45579a5bc596/signaling 200 13ms","method":"POST","requestID":"b47e08b0-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/63d99a93-0524-464f-b6fe-45579a5bc596/signaling"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0","requestID":"6f0d7225478ed35f2e6cf7b8b2844cb1"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.761963,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"6f0d7225478ed35f2e6cf7b8b2844cb1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615874,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NH0.dLJ1WT7pzpS6ug6S8389g7jViOD3hV4X1hDS5RlYZZ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6f0d7225478ed35f2e6cf7b8b2844cb1","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b480eee0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0788cfee-a543-4835-a238-16a774848502","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0fd51b48-8a8f-40ff-98bc-1c1c54411f3b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.77118} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.150872,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0788cfee-a543-4835-a238-16a774848502","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b480eee0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0788cfee-a543-4835-a238-16a774848502","object_type":"device","rebac_allow":false,"scope_allow":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":"b480eee0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0","requestID":"6f0d7225478ed35f2e6cf7b8b2844cb1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b480eee0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/0788cfee-a543-4835-a238-16a774848502/signaling 200 9ms","method":"POST","requestID":"b480eee0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/0788cfee-a543-4835-a238-16a774848502/signaling"} gateway-1 | {"time_local":"02/Aug/2024:16:24:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0 HTTP/1.1","status": "200","body_bytes_sent":"881","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6f0d7225478ed35f2e6cf7b8b2844cb1"} experiment-1 | {"level":"info","message":"GET /experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0 200 18ms","method":"GET","requestID":"6f0d7225478ed35f2e6cf7b8b2844cb1","responseTime":18,"status":200,"url":"/experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NH0.dLJ1WT7pzpS6ug6S8389g7jViOD3hV4X1hDS5RlYZZ4","level":"info","message":"auth send jwt","requestID":"5a4dafeb027e195fe5ee03288f3f305f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5a4dafeb027e195fe5ee03288f3f305f","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0","requestID":"5a4dafeb027e195fe5ee03288f3f305f"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.801572,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"5a4dafeb027e195fe5ee03288f3f305f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615874,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NH0.dLJ1WT7pzpS6ug6S8389g7jViOD3hV4X1hDS5RlYZZ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5a4dafeb027e195fe5ee03288f3f305f","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0"},"level":"info","message":"Attempting to finish experiment","requestID":"5a4dafeb027e195fe5ee03288f3f305f"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"b48582c0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.777653,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3fbbb4eb-297f-48e4-94be-b1633e353dc3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b48582c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/3fbbb4eb-297f-48e4-94be-b1633e353dc3","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615874,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NH0.dLJ1WT7pzpS6ug6S8389g7jViOD3hV4X1hDS5RlYZZ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b48582c0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/3fbbb4eb-297f-48e4-94be-b1633e353dc3","device":"0788cfee-a543-4835-a238-16a774848502","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/3fbbb4eb-297f-48e4-94be-b1633e353dc3","device":"63d99a93-0524-464f-b6fe-45579a5bc596","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/3fbbb4eb-297f-48e4-94be-b1633e353dc3' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/3fbbb4eb-297f-48e4-94be-b1633e353dc3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3fbbb4eb-297f-48e4-94be-b1633e353dc3","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"750735dde3ffc2a14107f7fd05c1123f","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":"750735dde3ffc2a14107f7fd05c1123f","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cb93b0b7387fcace16702bbd11515d21","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":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/0788cfee-a543-4835-a238-16a774848502"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3fbbb4eb-297f-48e4-94be-b1633e353dc3"}}},"level":"info","message":"received a callback","requestID":"750735dde3ffc2a14107f7fd05c1123f"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cb93b0b7387fcace16702bbd11515d21","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/0788cfee-a543-4835-a238-16a774848502"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3fbbb4eb-297f-48e4-94be-b1633e353dc3"}}},"level":"info","message":"received a callback","requestID":"cb93b0b7387fcace16702bbd11515d21"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3fbbb4eb-297f-48e4-94be-b1633e353dc3': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3fbbb4eb-297f-48e4-94be-b1633e353dc3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"9ebb0553-d3d9-4728-87e3-28dc3f733017","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.8256319} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"deb4a364-d24e-4834-aeee-4b4cd1cac447","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.8259382} device-1 | {"data":{"peerconnection":"3fbbb4eb-297f-48e4-94be-b1633e353dc3","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"b48582c0-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"b48582c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/3fbbb4eb-297f-48e4-94be-b1633e353dc3 204 37ms","method":"DELETE","requestID":"b48582c0-50eb-11ef-8434-2f6d198c7397","responseTime":37,"status":204,"url":"/peerconnections/3fbbb4eb-297f-48e4-94be-b1633e353dc3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0"},"level":"info","message":"Successfully finished experiment","requestID":"5a4dafeb027e195fe5ee03288f3f305f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b48e0e40-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63d99a93-0524-464f-b6fe-45579a5bc596","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5f686b49-4ea9-42fc-a375-1d2d44063b8e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.8613653} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.573059,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b48e0e40-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596","object_type":"device","rebac_allow":false,"scope_allow":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":"b48e0e40-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b48e0e40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/63d99a93-0524-464f-b6fe-45579a5bc596/signaling 200 14ms","method":"POST","requestID":"b48e0e40-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/63d99a93-0524-464f-b6fe-45579a5bc596/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b490a650-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"aab813b6-a80f-4ab9-9823-c00f9ad80a64","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.8700256} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ccb266b7-fd14-4a9e-8551-eb7960e55788","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.8702486} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"5a4dafeb027e195fe5ee03288f3f305f","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0788cfee-a543-4835-a238-16a774848502","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4e1f31b7-42c9-4189-a734-7a18df72ca01","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.8749645} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.263695,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0788cfee-a543-4835-a238-16a774848502","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b490a650-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0788cfee-a543-4835-a238-16a774848502","object_type":"device","rebac_allow":false,"scope_allow":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":"b490a650-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b490a650-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/0788cfee-a543-4835-a238-16a774848502/signaling 200 10ms","method":"POST","requestID":"b490a650-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/0788cfee-a543-4835-a238-16a774848502/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0","requestID":"5a4dafeb027e195fe5ee03288f3f305f"} gateway-1 | {"time_local":"02/Aug/2024:16:24:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.173","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5a4dafeb027e195fe5ee03288f3f305f"} experiment-1 | {"level":"info","message":"DELETE /experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0 204 172ms","method":"DELETE","requestID":"5a4dafeb027e195fe5ee03288f3f305f","responseTime":172,"status":204,"url":"/experiments/8cf5e8b5-4316-4f7e-b7bf-bfd3165b5cd0"} gateway-1 | {"time_local":"02/Aug/2024:16:24:34 +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":"750735dde3ffc2a14107f7fd05c1123f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 146ms","method":"POST","requestID":"750735dde3ffc2a14107f7fd05c1123f","responseTime":146,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NH0.dLJ1WT7pzpS6ug6S8389g7jViOD3hV4X1hDS5RlYZZ4","level":"info","message":"auth send jwt","requestID":"ddfe855cec3b879436a16cf7706f17ce"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ddfe855cec3b879436a16cf7706f17ce","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 145ms","method":"POST","requestID":"cb93b0b7387fcace16702bbd11515d21","responseTime":145,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevices called","requestID":"ddfe855cec3b879436a16cf7706f17ce"} gateway-1 | {"time_local":"02/Aug/2024:16:24:34 +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":"cb93b0b7387fcace16702bbd11515d21"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.931758,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ddfe855cec3b879436a16cf7706f17ce","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615874,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NH0.dLJ1WT7pzpS6ug6S8389g7jViOD3hV4X1hDS5RlYZZ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"ddfe855cec3b879436a16cf7706f17ce","responseTime":8,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:24:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3081","request_time":"1.191","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":"8d1a28c3e582d925d1f6d98fb1d2fe1f"} gateway-1 | {"time_local":"02/Aug/2024:16:24:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3079","request_time":"1.190","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":"e0ba4d91db4a924aa4a312a6c8594386"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/63d99a93-0524-464f-b6fe-45579a5bc596' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/0788cfee-a543-4835-a238-16a774848502' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a940e82-d561-43d2-9ab2-15873c0d15bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f620d6dd-e322-4ed0-b5da-34bca77afed7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.993063} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ddfe855cec3b879436a16cf7706f17ce","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8fbfcbef-7cec-4c4e-82a5-4cab1268ad28","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615874.9987755} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ddfe855cec3b879436a16cf7706f17ce","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a940e82-d561-43d2-9ab2-15873c0d15bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"c971486c-dd1f-46b5-be01-5263bdd1ab70","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615875.0104856} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6245eeea-0acb-46eb-9b9c-172053074ca3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615875.010746} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"ddfe855cec3b879436a16cf7706f17ce","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a940e82-d561-43d2-9ab2-15873c0d15bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a940e82-d561-43d2-9ab2-15873c0d15bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:35.010471488Z"}]},"request_id":"8dd9c5ab-472d-46ee-a476-bca36cd5c49c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615875.015862} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ddfe855cec3b879436a16cf7706f17ce","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ddfe855cec3b879436a16cf7706f17ce"} gateway-1 | {"time_local":"02/Aug/2024:16:24:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ddfe855cec3b879436a16cf7706f17ce"} device-1 | {"level":"info","message":"POST /devices? 201 53ms","method":"POST","requestID":"ddfe855cec3b879436a16cf7706f17ce","responseTime":53,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NX0.Na7_1SWZfcKmstZoRjvvYFjJ1JNf4nUU1y9tVwh-ttw","level":"info","message":"auth send jwt","requestID":"e50fa273bd5dfcd884235fb78fda39ac"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e50fa273bd5dfcd884235fb78fda39ac","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e50fa273bd5dfcd884235fb78fda39ac"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:35Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.789667,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e50fa273bd5dfcd884235fb78fda39ac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615875,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NX0.Na7_1SWZfcKmstZoRjvvYFjJ1JNf4nUU1y9tVwh-ttw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e50fa273bd5dfcd884235fb78fda39ac","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc17a0953-26ec-48b3-baf1-2ce5302e7bbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"aa53de60-b779-4f53-8864-7f71d07f05db","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615875.0398533} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e50fa273bd5dfcd884235fb78fda39ac","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c8547801-f82c-4f61-abc4-d44081b9f356","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615875.04434} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e50fa273bd5dfcd884235fb78fda39ac","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc17a0953-26ec-48b3-baf1-2ce5302e7bbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"25db8f99-3275-4c9c-a6e4-52c64e62c658","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615875.053847} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"35f5ef31-020c-4681-83ef-fd5b4f3e4368","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615875.0539978} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"e50fa273bd5dfcd884235fb78fda39ac","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc17a0953-26ec-48b3-baf1-2ce5302e7bbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc17a0953-26ec-48b3-baf1-2ce5302e7bbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:35.053833897Z"}]},"request_id":"2fc95a8d-a762-43e1-8698-5af1fb11ae45","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615875.0584903} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e50fa273bd5dfcd884235fb78fda39ac","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e50fa273bd5dfcd884235fb78fda39ac"} device-1 | {"level":"info","message":"POST /devices? 201 36ms","method":"POST","requestID":"e50fa273bd5dfcd884235fb78fda39ac","responseTime":36,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:24:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e50fa273bd5dfcd884235fb78fda39ac"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NX0.Na7_1SWZfcKmstZoRjvvYFjJ1JNf4nUU1y9tVwh-ttw","level":"info","message":"auth send jwt","requestID":"a9a499bc57a1674829d16317f2c8fc04"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a9a499bc57a1674829d16317f2c8fc04","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a9a499bc57a1674829d16317f2c8fc04"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:35Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.391068,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a9a499bc57a1674829d16317f2c8fc04","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615875,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NX0.Na7_1SWZfcKmstZoRjvvYFjJ1JNf4nUU1y9tVwh-ttw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a9a499bc57a1674829d16317f2c8fc04","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc17a0953-26ec-48b3-baf1-2ce5302e7bbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc17a0953-26ec-48b3-baf1-2ce5302e7bbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:35.053833897Z"}]},"request_id":"58430365-1094-4893-a2aa-be2ead0abd1f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615875.6982298} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a9a499bc57a1674829d16317f2c8fc04","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bbe77e78-696c-42b3-af66-e344acac563b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615875.7074945} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"a9a499bc57a1674829d16317f2c8fc04","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc17a0953-26ec-48b3-baf1-2ce5302e7bbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc17a0953-26ec-48b3-baf1-2ce5302e7bbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:35.053833897Z"}]},"request_id":"9e2f7e0e-b546-4bbb-92af-5db1d57e029a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615875.7323358} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a9a499bc57a1674829d16317f2c8fc04","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a9a499bc57a1674829d16317f2c8fc04"} gateway-1 | {"time_local":"02/Aug/2024:16:24:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.064","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"a9a499bc57a1674829d16317f2c8fc04"} device-1 | {"level":"info","message":"PATCH /devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc 200 56ms","method":"PATCH","requestID":"a9a499bc57a1674829d16317f2c8fc04","responseTime":56,"status":200,"url":"/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NX0.Na7_1SWZfcKmstZoRjvvYFjJ1JNf4nUU1y9tVwh-ttw","level":"info","message":"auth send jwt","requestID":"130ee3d72e85a30f17ef188cb47857d1"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"130ee3d72e85a30f17ef188cb47857d1","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"130ee3d72e85a30f17ef188cb47857d1"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:35Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.354557,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"130ee3d72e85a30f17ef188cb47857d1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615875,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3NX0.Na7_1SWZfcKmstZoRjvvYFjJ1JNf4nUU1y9tVwh-ttw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"130ee3d72e85a30f17ef188cb47857d1","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"130ee3d72e85a30f17ef188cb47857d1"} gateway-1 | {"time_local":"02/Aug/2024:16:24:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.031","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"130ee3d72e85a30f17ef188cb47857d1"} device-1 | {"level":"info","message":"POST /devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc/websocket 200 24ms","method":"POST","requestID":"130ee3d72e85a30f17ef188cb47857d1","responseTime":25,"status":200,"url":"/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0f6dd4db6d99d045b8100864a34532b5","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":"0f6dd4db6d99d045b8100864a34532b5","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:24:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7a940e82-d561-43d2-9ab2-15873c0d15bf/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":"0f6dd4db6d99d045b8100864a34532b5"} device-1 | {"level":"info","message":"OPTIONS /devices/7a940e82-d561-43d2-9ab2-15873c0d15bf/websocket 200 2ms","method":"OPTIONS","requestID":"0f6dd4db6d99d045b8100864a34532b5","responseTime":2,"status":200,"url":"/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3N30.oz04MD69pq_2YS8mhj2WYZutBju3PXZn746kUxx5A7c","level":"info","message":"auth send jwt","requestID":"c6ede3db405adc78c47d1a28c3645c61"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c6ede3db405adc78c47d1a28c3645c61","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c6ede3db405adc78c47d1a28c3645c61"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.723725,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c6ede3db405adc78c47d1a28c3645c61","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615877,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3N30.oz04MD69pq_2YS8mhj2WYZutBju3PXZn746kUxx5A7c"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c6ede3db405adc78c47d1a28c3645c61","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c6ede3db405adc78c47d1a28c3645c61"} gateway-1 | {"time_local":"02/Aug/2024:16:24:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7a940e82-d561-43d2-9ab2-15873c0d15bf/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.039","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":"c6ede3db405adc78c47d1a28c3645c61"} device-1 | {"level":"info","message":"POST /devices/7a940e82-d561-43d2-9ab2-15873c0d15bf/websocket 200 31ms","method":"POST","requestID":"c6ede3db405adc78c47d1a28c3645c61","responseTime":31,"status":200,"url":"/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e136210311bd0ae4e32fa739b4314697","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":"e136210311bd0ae4e32fa739b4314697","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:24:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7a940e82-d561-43d2-9ab2-15873c0d15bf? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"e136210311bd0ae4e32fa739b4314697"} device-1 | {"level":"info","message":"OPTIONS /devices/7a940e82-d561-43d2-9ab2-15873c0d15bf? 200 2ms","method":"OPTIONS","requestID":"e136210311bd0ae4e32fa739b4314697","responseTime":2,"status":200,"url":"/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3N30.oz04MD69pq_2YS8mhj2WYZutBju3PXZn746kUxx5A7c","level":"info","message":"auth send jwt","requestID":"a9c46327e931511f7dec0aed7e7a32e9"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a9c46327e931511f7dec0aed7e7a32e9","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a9c46327e931511f7dec0aed7e7a32e9"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.363236,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a9c46327e931511f7dec0aed7e7a32e9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615877,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3N30.oz04MD69pq_2YS8mhj2WYZutBju3PXZn746kUxx5A7c"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a9c46327e931511f7dec0aed7e7a32e9","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a940e82-d561-43d2-9ab2-15873c0d15bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a940e82-d561-43d2-9ab2-15873c0d15bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:35.010471488Z"}]},"request_id":"c7117c77-1ec7-4d75-b2d8-2e811e2bc7cc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615877.1676936} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a9c46327e931511f7dec0aed7e7a32e9","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"00640cb6-8614-4dc4-b6d0-2d01b50b644f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615877.1772437} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"a9c46327e931511f7dec0aed7e7a32e9","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a940e82-d561-43d2-9ab2-15873c0d15bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a940e82-d561-43d2-9ab2-15873c0d15bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:35.010471488Z"}]},"request_id":"4dacb0d5-8221-4252-a7eb-a96d62f7a0ae","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615877.1898975} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a9c46327e931511f7dec0aed7e7a32e9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a9c46327e931511f7dec0aed7e7a32e9"} gateway-1 | {"time_local":"02/Aug/2024:16:24:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7a940e82-d561-43d2-9ab2-15873c0d15bf? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.051","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":"a9c46327e931511f7dec0aed7e7a32e9"} device-1 | {"level":"info","message":"PATCH /devices/7a940e82-d561-43d2-9ab2-15873c0d15bf? 200 44ms","method":"PATCH","requestID":"a9c46327e931511f7dec0aed7e7a32e9","responseTime":44,"status":200,"url":"/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3N30.oz04MD69pq_2YS8mhj2WYZutBju3PXZn746kUxx5A7c","level":"info","message":"auth send jwt","requestID":"7711bc6c69eeacecbbe76a12cbda9192"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7711bc6c69eeacecbbe76a12cbda9192","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7711bc6c69eeacecbbe76a12cbda9192"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.538202,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"7711bc6c69eeacecbbe76a12cbda9192","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615877,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3N30.oz04MD69pq_2YS8mhj2WYZutBju3PXZn746kUxx5A7c"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7711bc6c69eeacecbbe76a12cbda9192","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a940e82-d561-43d2-9ab2-15873c0d15bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a940e82-d561-43d2-9ab2-15873c0d15bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:35.010471488Z"}]},"request_id":"3ec5c603-bb4c-40eb-aef3-5f9eb79d280f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615877.224429} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"7711bc6c69eeacecbbe76a12cbda9192","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7711bc6c69eeacecbbe76a12cbda9192"} gateway-1 | {"time_local":"02/Aug/2024:16:24:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7a940e82-d561-43d2-9ab2-15873c0d15bf? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.029","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7711bc6c69eeacecbbe76a12cbda9192"} device-1 | {"level":"info","message":"GET /devices/7a940e82-d561-43d2-9ab2-15873c0d15bf? 200 22ms","method":"GET","requestID":"7711bc6c69eeacecbbe76a12cbda9192","responseTime":22,"status":200,"url":"/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3N30.oz04MD69pq_2YS8mhj2WYZutBju3PXZn746kUxx5A7c","level":"info","message":"auth send jwt","requestID":"603c923e589d842e2e8873597c02801e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"603c923e589d842e2e8873597c02801e","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"603c923e589d842e2e8873597c02801e"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.458607,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"603c923e589d842e2e8873597c02801e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615877,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3N30.oz04MD69pq_2YS8mhj2WYZutBju3PXZn746kUxx5A7c"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"603c923e589d842e2e8873597c02801e","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc17a0953-26ec-48b3-baf1-2ce5302e7bbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc17a0953-26ec-48b3-baf1-2ce5302e7bbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:35.053833897Z"}]},"request_id":"0d85f85b-b3c7-4b7b-8d00-53f5bc04eec2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615877.2552326} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"603c923e589d842e2e8873597c02801e","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"603c923e589d842e2e8873597c02801e"} gateway-1 | {"time_local":"02/Aug/2024:16:24:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"603c923e589d842e2e8873597c02801e"} device-1 | {"level":"info","message":"GET /devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc? 200 19ms","method":"GET","requestID":"603c923e589d842e2e8873597c02801e","responseTime":19,"status":200,"url":"/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3N30.oz04MD69pq_2YS8mhj2WYZutBju3PXZn746kUxx5A7c","level":"info","message":"auth send jwt","requestID":"c033f361c726550fe46258094288519a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c033f361c726550fe46258094288519a","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"c033f361c726550fe46258094288519a"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.221853,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c033f361c726550fe46258094288519a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615877,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3N30.oz04MD69pq_2YS8mhj2WYZutBju3PXZn746kUxx5A7c"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c033f361c726550fe46258094288519a","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c"},"level":"info","message":"Attempting to run experiment","requestID":"c033f361c726550fe46258094288519a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c"},"level":"info","message":"Attempting to book experiment","requestID":"c033f361c726550fe46258094288519a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c"},"level":"info","message":"Successfully booked experiment","requestID":"c033f361c726550fe46258094288519a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b608a050-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b608ee70-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.801583,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58418","level":"info","msg":"Received request.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b608a050-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615877,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3N30.oz04MD69pq_2YS8mhj2WYZutBju3PXZn746kUxx5A7c"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b608a050-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58418","level":"info","msg":"Sent response.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.127307,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b608ee70-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615877,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3N30.oz04MD69pq_2YS8mhj2WYZutBju3PXZn746kUxx5A7c"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b608ee70-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a940e82-d561-43d2-9ab2-15873c0d15bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a940e82-d561-43d2-9ab2-15873c0d15bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:35.010471488Z"}]},"request_id":"7920b5f7-359e-4c32-aabd-6c7ab3a64e9d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615877.34619} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b608a050-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc17a0953-26ec-48b3-baf1-2ce5302e7bbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc17a0953-26ec-48b3-baf1-2ce5302e7bbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:35.053833897Z"}]},"request_id":"fbc45eab-2e79-45b0-aa68-2f3251ec11d3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615877.3477218} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b608ee70-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b608a050-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/7a940e82-d561-43d2-9ab2-15873c0d15bf? 200 19ms","method":"GET","requestID":"b608a050-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b608ee70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc? 200 18ms","method":"GET","requestID":"b608ee70-50eb-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c"},"level":"info","message":"Setting up experiment","requestID":"c033f361c726550fe46258094288519a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"c033f361c726550fe46258094288519a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"c033f361c726550fe46258094288519a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"c033f361c726550fe46258094288519a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"c033f361c726550fe46258094288519a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"c033f361c726550fe46258094288519a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"c033f361c726550fe46258094288519a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c"},"level":"info","message":"Successfully set up experiment","requestID":"c033f361c726550fe46258094288519a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b6134eb0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b6139cd0-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c"},"level":"info","message":"Successfully running experiment","requestID":"c033f361c726550fe46258094288519a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b613eaf0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.92129,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58418","level":"info","msg":"Received request.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b6134eb0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615877,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3N30.oz04MD69pq_2YS8mhj2WYZutBju3PXZn746kUxx5A7c"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b6134eb0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58418","level":"info","msg":"Sent response.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.787955,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b6139cd0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615877,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3N30.oz04MD69pq_2YS8mhj2WYZutBju3PXZn746kUxx5A7c"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"b6139cd0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a940e82-d561-43d2-9ab2-15873c0d15bf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bed18164-e023-46f2-a89d-c3fe6bf69c29","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615877.4130104} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.019776,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b613eaf0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf","object_type":"device","rebac_allow":false,"scope_allow":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":"b613eaf0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a940e82-d561-43d2-9ab2-15873c0d15bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a940e82-d561-43d2-9ab2-15873c0d15bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:35.010471488Z"}]},"request_id":"c4998e70-ed1c-4f41-8eb6-a52c0611b46b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615877.4158523} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"b6134eb0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc17a0953-26ec-48b3-baf1-2ce5302e7bbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc17a0953-26ec-48b3-baf1-2ce5302e7bbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:35.053833897Z"}]},"request_id":"51bd686e-839c-4359-b63e-828293255cb5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615877.4201005} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b6139cd0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b613eaf0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/7a940e82-d561-43d2-9ab2-15873c0d15bf/signaling 200 21ms","method":"POST","requestID":"b613eaf0-50eb-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F214b756f-aa79-4eab-9f66-2b1b9f4c594c#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F214b756f-aa79-4eab-9f66-2b1b9f4c594c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"b786e7a9-ddd2-452a-aebf-8b66b7a516fc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615877.4322119} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5ed9da69-84d9-4f70-8609-945f7752d125","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615877.4325464} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b617e290-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"c033f361c726550fe46258094288519a","responseTime":25,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b6134eb0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/7a940e82-d561-43d2-9ab2-15873c0d15bf? 200 33ms","method":"GET","requestID":"b6134eb0-50eb-11ef-8434-2f6d198c7397","responseTime":33,"status":200,"url":"/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b6139cd0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:37Z"} device-1 | {"level":"info","message":"GET /devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc? 200 33ms","method":"GET","requestID":"b6139cd0-50eb-11ef-8434-2f6d198c7397","responseTime":33,"status":200,"url":"/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc?"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc17a0953-26ec-48b3-baf1-2ce5302e7bbc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fe1b4cde-764e-4119-a8e0-504fe58cacaf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615877.439251} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.205749,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b617e290-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc","object_type":"device","rebac_allow":false,"scope_allow":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":"b617e290-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b6196930-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b617e290-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"c033f361c726550fe46258094288519a"} device-1 | {"level":"info","message":"POST /devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc/signaling 200 14ms","method":"POST","requestID":"b617e290-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:37Z"} gateway-1 | {"time_local":"02/Aug/2024:16:24:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.182","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c033f361c726550fe46258094288519a"} experiment-1 | {"level":"info","message":"POST /experiments? 201 174ms","method":"POST","requestID":"c033f361c726550fe46258094288519a","responseTime":174,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a940e82-d561-43d2-9ab2-15873c0d15bf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5f9067ab-2020-4bf1-a532-16f6bc86c023","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615877.4490993} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.40141,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b6196930-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf","object_type":"device","rebac_allow":false,"scope_allow":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":"b6196930-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b6196930-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/7a940e82-d561-43d2-9ab2-15873c0d15bf/signaling 200 10ms","method":"POST","requestID":"b6196930-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3N30.oz04MD69pq_2YS8mhj2WYZutBju3PXZn746kUxx5A7c","level":"info","message":"auth send jwt","requestID":"9afc2444e7e72a5db21667a762360b77"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9afc2444e7e72a5db21667a762360b77","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b61b6500-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9afc2444e7e72a5db21667a762360b77"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58418","level":"info","msg":"Received request.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc17a0953-26ec-48b3-baf1-2ce5302e7bbc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa2cd003-6a2b-4076-ab48-6011d1e5c9fb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615877.4608724} authorization-1 | {"client_addr":"127.0.0.1:58418","level":"info","msg":"Sent response.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.710585,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"9afc2444e7e72a5db21667a762360b77","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615877,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3N30.oz04MD69pq_2YS8mhj2WYZutBju3PXZn746kUxx5A7c"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9afc2444e7e72a5db21667a762360b77","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.303349,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b61b6500-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc","object_type":"device","rebac_allow":false,"scope_allow":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":"b61b6500-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a940e82-d561-43d2-9ab2-15873c0d15bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a940e82-d561-43d2-9ab2-15873c0d15bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:35.010471488Z"}]},"request_id":"31226675-5a1b-4421-9244-e238cfdd3a4c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615877.4664588} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b61b6500-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc/signaling 200 11ms","method":"POST","requestID":"b61b6500-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9afc2444e7e72a5db21667a762360b77","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"c033f361c726550fe46258094288519a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b61d87e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b61daef0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9afc2444e7e72a5db21667a762360b77"} gateway-1 | {"time_local":"02/Aug/2024:16:24:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7a940e82-d561-43d2-9ab2-15873c0d15bf? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9afc2444e7e72a5db21667a762360b77"} device-1 | {"level":"info","message":"GET /devices/7a940e82-d561-43d2-9ab2-15873c0d15bf? 200 15ms","method":"GET","requestID":"9afc2444e7e72a5db21667a762360b77","responseTime":15,"status":200,"url":"/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.731157,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58418","level":"info","msg":"Received request.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b61d87e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615877,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3N30.oz04MD69pq_2YS8mhj2WYZutBju3PXZn746kUxx5A7c"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b61d87e0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58418","level":"info","msg":"Sent response.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.44152,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b61daef0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615877,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3N30.oz04MD69pq_2YS8mhj2WYZutBju3PXZn746kUxx5A7c"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b61daef0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3N30.oz04MD69pq_2YS8mhj2WYZutBju3PXZn746kUxx5A7c","level":"info","message":"auth send jwt","requestID":"4d55012c753b04ea3636d3985c349af8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4d55012c753b04ea3636d3985c349af8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4d55012c753b04ea3636d3985c349af8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a940e82-d561-43d2-9ab2-15873c0d15bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a940e82-d561-43d2-9ab2-15873c0d15bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:35.010471488Z"}]},"request_id":"a320b525-4cdb-44ad-a43c-c48f2494ac47","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615877.4798992} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b61d87e0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc17a0953-26ec-48b3-baf1-2ce5302e7bbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc17a0953-26ec-48b3-baf1-2ce5302e7bbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:35.053833897Z"}]},"request_id":"d22fbf72-446e-49e4-a32c-95b67ce6bb67","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615877.481534} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b61daef0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.976047,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"4d55012c753b04ea3636d3985c349af8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615877,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3N30.oz04MD69pq_2YS8mhj2WYZutBju3PXZn746kUxx5A7c"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4d55012c753b04ea3636d3985c349af8","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b61d87e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/7a940e82-d561-43d2-9ab2-15873c0d15bf? 200 16ms","method":"GET","requestID":"b61d87e0-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b61daef0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc? 200 18ms","method":"GET","requestID":"b61daef0-50eb-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc17a0953-26ec-48b3-baf1-2ce5302e7bbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc17a0953-26ec-48b3-baf1-2ce5302e7bbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:35.053833897Z"}]},"request_id":"80a49a74-35ae-4506-ada1-0db095f205c4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615877.489884} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c"},"level":"info","message":"Building connection plan","requestID":"c033f361c726550fe46258094288519a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4d55012c753b04ea3636d3985c349af8","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"7e8f8439-a093-4ee2-9839-9f7a94b07e50"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"eaceb172-9db9-4da6-8380-a5e15f1a0b17"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"cc3349ed-a71e-45a7-a097-347997791581"}]},"level":"info","message":"Built pairwise service configurations","requestID":"c033f361c726550fe46258094288519a"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"c033f361c726550fe46258094288519a"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"b6210a50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4d55012c753b04ea3636d3985c349af8"} gateway-1 | {"time_local":"02/Aug/2024:16:24:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4d55012c753b04ea3636d3985c349af8"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:37Z"} device-1 | {"level":"info","message":"GET /devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc? 200 15ms","method":"GET","requestID":"4d55012c753b04ea3636d3985c349af8","responseTime":15,"status":200,"url":"/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.065832,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b6210a50-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615877,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3N30.oz04MD69pq_2YS8mhj2WYZutBju3PXZn746kUxx5A7c"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b6210a50-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"a836ce61-3df6-4418-9879-530161a927c4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615877.505889} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fbef57e6-ffa9-4625-b786-a1e52eb7544f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615877.5059984} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b6210a50-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"b6210a50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"b6210a50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/3cc068e0-ffec-42e8-b1ef-bd5c42d85345'","requestID":"b6210a50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/3cc068e0-ffec-42e8-b1ef-bd5c42d85345'","requestID":"b6210a50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"b6210a50-50eb-11ef-8434-2f6d198c7397"} 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":"b6210a50-50eb-11ef-8434-2f6d198c7397","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":"b6210a50-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"c033f361c726550fe46258094288519a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b62a3210-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a940e82-d561-43d2-9ab2-15873c0d15bf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9494302a-fd72-41c3-a3a6-1ce1383cd908","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615877.5576963} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.635186,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b62a3210-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf","object_type":"device","rebac_allow":false,"scope_allow":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":"b62a3210-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"7a940e82-d561-43d2-9ab2-15873c0d15bf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"7a940e82-d561-43d2-9ab2-15873c0d15bf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b62a3210-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/7a940e82-d561-43d2-9ab2-15873c0d15bf/signaling 200 13ms","method":"POST","requestID":"b62a3210-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b62ca310-50eb-11ef-8434-2f6d198c7397"} device-1 | {"content":{"sdp":"v=0\r\no=- 7149358057380391339 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:uRRq\r\na=ice-pwd:JhbPvNUSVFEu1ZCEZ27zuzsk\r\na=ice-options:trickle\r\na=fingerprint:sha-256 8B:7E:08:CE:AD:B6:BF:C0:B9:D8:9E:79:21:B2:6F:B9:78:F8:5A:70:B6:43:80:8E:77:44:55:A7:76:AA:00:8C\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"7a940e82-d561-43d2-9ab2-15873c0d15bf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc17a0953-26ec-48b3-baf1-2ce5302e7bbc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3006fe27-1f1a-4939-a9ea-fe0ac21cb3a1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615877.5745296} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.687862,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b62ca310-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc","object_type":"device","rebac_allow":false,"scope_allow":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":"b62ca310-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b62ca310-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc/signaling 200 9ms","method":"POST","requestID":"b62ca310-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc/signaling"} device-1 | {"device":"7a940e82-d561-43d2-9ab2-15873c0d15bf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"c17a0953-26ec-48b3-baf1-2ce5302e7bbc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c17a0953-26ec-48b3-baf1-2ce5302e7bbc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c17a0953-26ec-48b3-baf1-2ce5302e7bbc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"3cc068e0-ffec-42e8-b1ef-bd5c42d85345","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"c17a0953-26ec-48b3-baf1-2ce5302e7bbc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c17a0953-26ec-48b3-baf1-2ce5302e7bbc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/3cc068e0-ffec-42e8-b1ef-bd5c42d85345' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3cc068e0-ffec-42e8-b1ef-bd5c42d85345","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"677dcd2afaf558200e48eea29e61afcb","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":"677dcd2afaf558200e48eea29e61afcb","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/3cc068e0-ffec-42e8-b1ef-bd5c42d85345"}}},"level":"info","message":"received a callback","requestID":"677dcd2afaf558200e48eea29e61afcb"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"677dcd2afaf558200e48eea29e61afcb","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24: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.017","http_referrer":"","http_user_agent":"node-fetch","requestID":"677dcd2afaf558200e48eea29e61afcb"} device-1 | {"content":{"candidate":"candidate:1136987627 1 udp 2113937151 6e2a9549-942e-4181-82a0-468b673e0250.local 53807 typ host generation 0 ufrag uRRq network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"7a940e82-d561-43d2-9ab2-15873c0d15bf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1268598316 1 udp 1677729535 141.24.211.56 53807 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag uRRq network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"7a940e82-d561-43d2-9ab2-15873c0d15bf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:4122082782 1 udp 33562623 141.24.210.113 56299 typ relay raddr 141.24.211.56 rport 53807 generation 0 ufrag uRRq network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"7a940e82-d561-43d2-9ab2-15873c0d15bf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"7a940e82-d561-43d2-9ab2-15873c0d15bf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"peerconnection":"3cc068e0-ffec-42e8-b1ef-bd5c42d85345","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf'"} device-1 | {"device":"c17a0953-26ec-48b3-baf1-2ce5302e7bbc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c17a0953-26ec-48b3-baf1-2ce5302e7bbc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7a940e82-d561-43d2-9ab2-15873c0d15bf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"3cc068e0-ffec-42e8-b1ef-bd5c42d85345","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/3cc068e0-ffec-42e8-b1ef-bd5c42d85345' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3cc068e0-ffec-42e8-b1ef-bd5c42d85345","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0c9199bd8bcd4f90ed29b88e0a9ec6e8","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":"0c9199bd8bcd4f90ed29b88e0a9ec6e8","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/3cc068e0-ffec-42e8-b1ef-bd5c42d85345"}}},"level":"info","message":"received a callback","requestID":"0c9199bd8bcd4f90ed29b88e0a9ec6e8"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"b7665b90-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:39Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3cc068e0-ffec-42e8-b1ef-bd5c42d85345","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"17c2ad5a-cfb9-4eb6-8980-3007ece10a51","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615879.6319866} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.587628,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3cc068e0-ffec-42e8-b1ef-bd5c42d85345","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b7665b90-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/3cc068e0-ffec-42e8-b1ef-bd5c42d85345","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":"b7665b90-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"b7665b90-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/3cc068e0-ffec-42e8-b1ef-bd5c42d85345 200 13ms","method":"GET","requestID":"b7665b90-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/peerconnections/3cc068e0-ffec-42e8-b1ef-bd5c42d85345"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 42ms","method":"POST","requestID":"0c9199bd8bcd4f90ed29b88e0a9ec6e8","responseTime":42,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24: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.046","http_referrer":"","http_user_agent":"node-fetch","requestID":"0c9199bd8bcd4f90ed29b88e0a9ec6e8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b76c00e0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:39Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc17a0953-26ec-48b3-baf1-2ce5302e7bbc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"601cfe92-ae26-42d9-b1d3-1d498fb03dc1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615879.6683009} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.790743,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b76c00e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc","object_type":"device","rebac_allow":false,"scope_allow":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":"b76c00e0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b76c00e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc/signaling 200 13ms","method":"POST","requestID":"b76c00e0-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b76e4ad0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:39Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a940e82-d561-43d2-9ab2-15873c0d15bf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"822ece1b-9d94-4d6e-9092-b6cc525b7443","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615879.6829495} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.991602,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b76e4ad0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf","object_type":"device","rebac_allow":false,"scope_allow":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":"b76e4ad0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b76e4ad0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/7a940e82-d561-43d2-9ab2-15873c0d15bf/signaling 200 11ms","method":"POST","requestID":"b76e4ad0-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3OX0.RM2WftMDc-C2hRcOlGi0X7008qVeARvDbiI3eNn2kEE","level":"info","message":"auth send jwt","requestID":"1d8a030ce37e74252e7eb766dd5948fa"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1d8a030ce37e74252e7eb766dd5948fa","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c","requestID":"1d8a030ce37e74252e7eb766dd5948fa"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.781486,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1d8a030ce37e74252e7eb766dd5948fa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615879,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3OX0.RM2WftMDc-C2hRcOlGi0X7008qVeARvDbiI3eNn2kEE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1d8a030ce37e74252e7eb766dd5948fa","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c","requestID":"1d8a030ce37e74252e7eb766dd5948fa"} gateway-1 | {"time_local":"02/Aug/2024:16:24:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1d8a030ce37e74252e7eb766dd5948fa"} experiment-1 | {"level":"info","message":"GET /experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c 200 13ms","method":"GET","requestID":"1d8a030ce37e74252e7eb766dd5948fa","responseTime":13,"status":200,"url":"/experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3OX0.RM2WftMDc-C2hRcOlGi0X7008qVeARvDbiI3eNn2kEE","level":"info","message":"auth send jwt","requestID":"f94f5a140be9a1e919512f0a8ec83c54"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f94f5a140be9a1e919512f0a8ec83c54","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c","requestID":"f94f5a140be9a1e919512f0a8ec83c54"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.857916,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:39Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f94f5a140be9a1e919512f0a8ec83c54","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615879,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3OX0.RM2WftMDc-C2hRcOlGi0X7008qVeARvDbiI3eNn2kEE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f94f5a140be9a1e919512f0a8ec83c54","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c"},"level":"info","message":"Attempting to finish experiment","requestID":"f94f5a140be9a1e919512f0a8ec83c54"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"b777c0b0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.803567,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:39Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3cc068e0-ffec-42e8-b1ef-bd5c42d85345","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b777c0b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/3cc068e0-ffec-42e8-b1ef-bd5c42d85345","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615879,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3OX0.RM2WftMDc-C2hRcOlGi0X7008qVeARvDbiI3eNn2kEE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b777c0b0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/3cc068e0-ffec-42e8-b1ef-bd5c42d85345","device":"7a940e82-d561-43d2-9ab2-15873c0d15bf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"c17a0953-26ec-48b3-baf1-2ce5302e7bbc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c17a0953-26ec-48b3-baf1-2ce5302e7bbc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c17a0953-26ec-48b3-baf1-2ce5302e7bbc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/3cc068e0-ffec-42e8-b1ef-bd5c42d85345' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/3cc068e0-ffec-42e8-b1ef-bd5c42d85345' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3cc068e0-ffec-42e8-b1ef-bd5c42d85345","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3801a9cfc600d0fab5f0d4c83e2fc724","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":"3801a9cfc600d0fab5f0d4c83e2fc724","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"853fe755e08269902ab1759cb60603b6","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":"853fe755e08269902ab1759cb60603b6","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3cc068e0-ffec-42e8-b1ef-bd5c42d85345"}}},"level":"info","message":"received a callback","requestID":"3801a9cfc600d0fab5f0d4c83e2fc724"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3cc068e0-ffec-42e8-b1ef-bd5c42d85345': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3cc068e0-ffec-42e8-b1ef-bd5c42d85345","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"30b5874d-1379-4839-8d38-fd23d4bd21e1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615879.7802327} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bc8a6b78-b542-45d2-9c86-0a1168d3646e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615879.7804468} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3cc068e0-ffec-42e8-b1ef-bd5c42d85345"}}},"level":"info","message":"received a callback","requestID":"853fe755e08269902ab1759cb60603b6"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"b777c0b0-50eb-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"3cc068e0-ffec-42e8-b1ef-bd5c42d85345","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"b777c0b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/3cc068e0-ffec-42e8-b1ef-bd5c42d85345 204 59ms","method":"DELETE","requestID":"b777c0b0-50eb-11ef-8434-2f6d198c7397","responseTime":59,"status":204,"url":"/peerconnections/3cc068e0-ffec-42e8-b1ef-bd5c42d85345"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c"},"level":"info","message":"Successfully finished experiment","requestID":"f94f5a140be9a1e919512f0a8ec83c54"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b7852e30-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:39Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc17a0953-26ec-48b3-baf1-2ce5302e7bbc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"77be6682-76f0-4191-a611-fd40436d034c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615879.836181} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.907163,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b7852e30-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc","object_type":"device","rebac_allow":false,"scope_allow":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":"b7852e30-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b7852e30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc/signaling 200 17ms","method":"POST","requestID":"b7852e30-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/c17a0953-26ec-48b3-baf1-2ce5302e7bbc/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F214b756f-aa79-4eab-9f66-2b1b9f4c594c': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F214b756f-aa79-4eab-9f66-2b1b9f4c594c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"2b821894-1d56-4b96-8e3d-c4170e7e7c33","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615879.844441} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b2cf3450-5cd3-45cb-829e-b2cc8c2926d8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615879.8447816} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b7886280-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"f94f5a140be9a1e919512f0a8ec83c54","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:39Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a940e82-d561-43d2-9ab2-15873c0d15bf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4e00fced-4138-4377-bc92-5966b2560c19","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615879.8559935} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.204836,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b7886280-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf","object_type":"device","rebac_allow":false,"scope_allow":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":"b7886280-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b7886280-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/7a940e82-d561-43d2-9ab2-15873c0d15bf/signaling 200 18ms","method":"POST","requestID":"b7886280-50eb-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/7a940e82-d561-43d2-9ab2-15873c0d15bf/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c","requestID":"f94f5a140be9a1e919512f0a8ec83c54"} gateway-1 | {"time_local":"02/Aug/2024:16:24:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.210","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f94f5a140be9a1e919512f0a8ec83c54"} gateway-1 | {"time_local":"02/Aug/2024:16:24:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3423","request_time":"4.161","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"dc0aa4a6901e1117681ed2327d796574"} experiment-1 | {"level":"info","message":"DELETE /experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c 204 208ms","method":"DELETE","requestID":"f94f5a140be9a1e919512f0a8ec83c54","responseTime":208,"status":204,"url":"/experiments/214b756f-aa79-4eab-9f66-2b1b9f4c594c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 157ms","method":"POST","requestID":"3801a9cfc600d0fab5f0d4c83e2fc724","responseTime":158,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24: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.162","http_referrer":"","http_user_agent":"node-fetch","requestID":"3801a9cfc600d0fab5f0d4c83e2fc724"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 156ms","method":"POST","requestID":"853fe755e08269902ab1759cb60603b6","responseTime":156,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24: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.163","http_referrer":"","http_user_agent":"node-fetch","requestID":"853fe755e08269902ab1759cb60603b6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3OX0.RM2WftMDc-C2hRcOlGi0X7008qVeARvDbiI3eNn2kEE","level":"info","message":"auth send jwt","requestID":"3b552b7da506dfc758653bb9e666a9c6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3b552b7da506dfc758653bb9e666a9c6","responseTime":5,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:24:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2886","request_time":"2.841","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":"f791ee4ae4af458a928b01fb69b9e3bf"} device-1 | {"level":"info","message":"postDevices called","requestID":"3b552b7da506dfc758653bb9e666a9c6"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.969607,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"3b552b7da506dfc758653bb9e666a9c6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615879,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg3OX0.RM2WftMDc-C2hRcOlGi0X7008qVeARvDbiI3eNn2kEE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3b552b7da506dfc758653bb9e666a9c6","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/c17a0953-26ec-48b3-baf1-2ce5302e7bbc' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4e7c8d60-d9d0-494a-bd62-f491ddd0b894","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"51c172c2-7693-4581-a419-f0fa0dead67a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615879.9672244} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3b552b7da506dfc758653bb9e666a9c6","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/7a940e82-d561-43d2-9ab2-15873c0d15bf' 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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"10aa904f-422b-4e28-b5dc-1be24db113c5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615879.9734595} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"3b552b7da506dfc758653bb9e666a9c6","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4e7c8d60-d9d0-494a-bd62-f491ddd0b894","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"17ab3790-9180-4164-ae21-013ccca00630","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615879.9891164} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2db9d493-4225-4a47-a1f0-3c99df01db43","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615879.989419} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"3b552b7da506dfc758653bb9e666a9c6","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4e7c8d60-d9d0-494a-bd62-f491ddd0b894","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4e7c8d60-d9d0-494a-bd62-f491ddd0b894","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:39.989100564Z"}]},"request_id":"a8864c08-b435-43fe-9fef-d8408836d1b4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615879.9943907} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3b552b7da506dfc758653bb9e666a9c6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3b552b7da506dfc758653bb9e666a9c6"} gateway-1 | {"time_local":"02/Aug/2024:16:24:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.063","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3b552b7da506dfc758653bb9e666a9c6"} device-1 | {"level":"info","message":"POST /devices? 201 54ms","method":"POST","requestID":"3b552b7da506dfc758653bb9e666a9c6","responseTime":54,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4MH0.keNmDGqHQsFXAjKfyIqcU3ESzttYrf9aaWdO_r6G44o","level":"info","message":"auth send jwt","requestID":"2e0bcdbd853e78c16416f57c4521aca9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2e0bcdbd853e78c16416f57c4521aca9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2e0bcdbd853e78c16416f57c4521aca9"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.696647,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"2e0bcdbd853e78c16416f57c4521aca9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615880,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4MH0.keNmDGqHQsFXAjKfyIqcU3ESzttYrf9aaWdO_r6G44o"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2e0bcdbd853e78c16416f57c4521aca9","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2da692c6-944d-49bf-a96e-e053a4ac8114","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"04c5dc5c-c185-4b4b-9a2b-9dd939fdc876","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615880.020837} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2e0bcdbd853e78c16416f57c4521aca9","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d73fdfe4-1733-40d3-bd05-a700bec9f5a0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615880.0263805} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"2e0bcdbd853e78c16416f57c4521aca9","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2da692c6-944d-49bf-a96e-e053a4ac8114","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"272c8c15-2290-4740-b36f-9306cbaa20fb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615880.037664} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"40da7e61-d231-4983-8570-a4391ea81ab3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615880.0378985} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"2e0bcdbd853e78c16416f57c4521aca9","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2da692c6-944d-49bf-a96e-e053a4ac8114","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2da692c6-944d-49bf-a96e-e053a4ac8114","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:40.037652141Z"}]},"request_id":"68280de1-1a35-40f5-8893-b30851df27ef","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615880.0424213} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2e0bcdbd853e78c16416f57c4521aca9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2e0bcdbd853e78c16416f57c4521aca9"} gateway-1 | {"time_local":"02/Aug/2024:16:24:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2e0bcdbd853e78c16416f57c4521aca9"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"2e0bcdbd853e78c16416f57c4521aca9","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4MH0.keNmDGqHQsFXAjKfyIqcU3ESzttYrf9aaWdO_r6G44o","level":"info","message":"auth send jwt","requestID":"533f8b24cae099226de9916f306ca2fa"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"533f8b24cae099226de9916f306ca2fa","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"533f8b24cae099226de9916f306ca2fa"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.666963,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"533f8b24cae099226de9916f306ca2fa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615880,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4MH0.keNmDGqHQsFXAjKfyIqcU3ESzttYrf9aaWdO_r6G44o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"533f8b24cae099226de9916f306ca2fa","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4e7c8d60-d9d0-494a-bd62-f491ddd0b894","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4e7c8d60-d9d0-494a-bd62-f491ddd0b894","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:39.989100564Z"}]},"request_id":"2f25c161-76c8-4c36-b7a1-dfac1e337fd1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615880.5756354} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"533f8b24cae099226de9916f306ca2fa","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"64836a39-41b0-42b0-84c5-0588a0df718c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615880.5814633} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"533f8b24cae099226de9916f306ca2fa","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4e7c8d60-d9d0-494a-bd62-f491ddd0b894","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4e7c8d60-d9d0-494a-bd62-f491ddd0b894","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:39.989100564Z"}]},"request_id":"aef88c34-1643-423b-ac8b-065c1209c051","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615880.5935318} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"533f8b24cae099226de9916f306ca2fa","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"533f8b24cae099226de9916f306ca2fa"} gateway-1 | {"time_local":"02/Aug/2024:16:24:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"533f8b24cae099226de9916f306ca2fa"} device-1 | {"level":"info","message":"PATCH /devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894 200 34ms","method":"PATCH","requestID":"533f8b24cae099226de9916f306ca2fa","responseTime":34,"status":200,"url":"/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4MH0.keNmDGqHQsFXAjKfyIqcU3ESzttYrf9aaWdO_r6G44o","level":"info","message":"auth send jwt","requestID":"f561eaa7b4f311299e4bfd7a6a5093bd"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f561eaa7b4f311299e4bfd7a6a5093bd","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f561eaa7b4f311299e4bfd7a6a5093bd"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.121428,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f561eaa7b4f311299e4bfd7a6a5093bd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615880,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4MH0.keNmDGqHQsFXAjKfyIqcU3ESzttYrf9aaWdO_r6G44o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f561eaa7b4f311299e4bfd7a6a5093bd","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f561eaa7b4f311299e4bfd7a6a5093bd"} gateway-1 | {"time_local":"02/Aug/2024:16:24:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"f561eaa7b4f311299e4bfd7a6a5093bd"} device-1 | {"level":"info","message":"POST /devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894/websocket 200 19ms","method":"POST","requestID":"f561eaa7b4f311299e4bfd7a6a5093bd","responseTime":19,"status":200,"url":"/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f6d4fa9b385b8d869920b69193c84746","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":"f6d4fa9b385b8d869920b69193c84746","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:24:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2da692c6-944d-49bf-a96e-e053a4ac8114/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":"f6d4fa9b385b8d869920b69193c84746"} device-1 | {"level":"info","message":"OPTIONS /devices/2da692c6-944d-49bf-a96e-e053a4ac8114/websocket 200 1ms","method":"OPTIONS","requestID":"f6d4fa9b385b8d869920b69193c84746","responseTime":1,"status":200,"url":"/devices/2da692c6-944d-49bf-a96e-e053a4ac8114/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4Mn0.B6XqyS78EUtYCE999pX7tP4INSChs1_rLFuc73h2oP4","level":"info","message":"auth send jwt","requestID":"aa6b4ca19c6b0bf3d30bc1224c7ef00b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"aa6b4ca19c6b0bf3d30bc1224c7ef00b","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"aa6b4ca19c6b0bf3d30bc1224c7ef00b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.285417,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"aa6b4ca19c6b0bf3d30bc1224c7ef00b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615882,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4Mn0.B6XqyS78EUtYCE999pX7tP4INSChs1_rLFuc73h2oP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"aa6b4ca19c6b0bf3d30bc1224c7ef00b","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"aa6b4ca19c6b0bf3d30bc1224c7ef00b"} gateway-1 | {"time_local":"02/Aug/2024:16:24:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2da692c6-944d-49bf-a96e-e053a4ac8114/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.034","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":"aa6b4ca19c6b0bf3d30bc1224c7ef00b"} device-1 | {"level":"info","message":"POST /devices/2da692c6-944d-49bf-a96e-e053a4ac8114/websocket 200 28ms","method":"POST","requestID":"aa6b4ca19c6b0bf3d30bc1224c7ef00b","responseTime":28,"status":200,"url":"/devices/2da692c6-944d-49bf-a96e-e053a4ac8114/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ee037b5ea520511f573946007463681c","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":"ee037b5ea520511f573946007463681c","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:24:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2da692c6-944d-49bf-a96e-e053a4ac8114? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"ee037b5ea520511f573946007463681c"} device-1 | {"level":"info","message":"OPTIONS /devices/2da692c6-944d-49bf-a96e-e053a4ac8114? 200 2ms","method":"OPTIONS","requestID":"ee037b5ea520511f573946007463681c","responseTime":2,"status":200,"url":"/devices/2da692c6-944d-49bf-a96e-e053a4ac8114?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4Mn0.B6XqyS78EUtYCE999pX7tP4INSChs1_rLFuc73h2oP4","level":"info","message":"auth send jwt","requestID":"fa25d6af9fe77e18aeabd4a93808928d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"fa25d6af9fe77e18aeabd4a93808928d","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"fa25d6af9fe77e18aeabd4a93808928d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.25577,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fa25d6af9fe77e18aeabd4a93808928d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615882,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4Mn0.B6XqyS78EUtYCE999pX7tP4INSChs1_rLFuc73h2oP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fa25d6af9fe77e18aeabd4a93808928d","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2da692c6-944d-49bf-a96e-e053a4ac8114","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2da692c6-944d-49bf-a96e-e053a4ac8114","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:40.037652141Z"}]},"request_id":"c12b4cac-47bc-4a4d-8bd7-b301d6819bbc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615882.17281} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"fa25d6af9fe77e18aeabd4a93808928d","responseTime":7,"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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4440a98c-bb8a-4c10-bcdd-28e4afdf34f4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615882.1836495} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"fa25d6af9fe77e18aeabd4a93808928d","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2da692c6-944d-49bf-a96e-e053a4ac8114","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2da692c6-944d-49bf-a96e-e053a4ac8114","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:40.037652141Z"}]},"request_id":"d34ecad9-be8a-437c-9603-59f6d3b014e5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615882.1958804} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"fa25d6af9fe77e18aeabd4a93808928d","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"fa25d6af9fe77e18aeabd4a93808928d"} gateway-1 | {"time_local":"02/Aug/2024:16:24:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2da692c6-944d-49bf-a96e-e053a4ac8114? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.057","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":"fa25d6af9fe77e18aeabd4a93808928d"} device-1 | {"level":"info","message":"PATCH /devices/2da692c6-944d-49bf-a96e-e053a4ac8114? 200 49ms","method":"PATCH","requestID":"fa25d6af9fe77e18aeabd4a93808928d","responseTime":49,"status":200,"url":"/devices/2da692c6-944d-49bf-a96e-e053a4ac8114?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4Mn0.B6XqyS78EUtYCE999pX7tP4INSChs1_rLFuc73h2oP4","level":"info","message":"auth send jwt","requestID":"b3306309d464ff8bb667b36b79b8f3b6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b3306309d464ff8bb667b36b79b8f3b6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b3306309d464ff8bb667b36b79b8f3b6"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.887407,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b3306309d464ff8bb667b36b79b8f3b6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615882,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4Mn0.B6XqyS78EUtYCE999pX7tP4INSChs1_rLFuc73h2oP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b3306309d464ff8bb667b36b79b8f3b6","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4e7c8d60-d9d0-494a-bd62-f491ddd0b894","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4e7c8d60-d9d0-494a-bd62-f491ddd0b894","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:39.989100564Z"}]},"request_id":"d211cac4-7691-4371-9129-e1f2abc6fb21","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615882.2257562} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b3306309d464ff8bb667b36b79b8f3b6","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b3306309d464ff8bb667b36b79b8f3b6"} gateway-1 | {"time_local":"02/Aug/2024:16:24:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b3306309d464ff8bb667b36b79b8f3b6"} device-1 | {"level":"info","message":"GET /devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894? 200 16ms","method":"GET","requestID":"b3306309d464ff8bb667b36b79b8f3b6","responseTime":16,"status":200,"url":"/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4Mn0.B6XqyS78EUtYCE999pX7tP4INSChs1_rLFuc73h2oP4","level":"info","message":"auth send jwt","requestID":"ded30a45f93ed4ce6db324a41d3ed0b6"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"ded30a45f93ed4ce6db324a41d3ed0b6","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ded30a45f93ed4ce6db324a41d3ed0b6"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.311818,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ded30a45f93ed4ce6db324a41d3ed0b6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615882,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4Mn0.B6XqyS78EUtYCE999pX7tP4INSChs1_rLFuc73h2oP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ded30a45f93ed4ce6db324a41d3ed0b6","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2da692c6-944d-49bf-a96e-e053a4ac8114","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2da692c6-944d-49bf-a96e-e053a4ac8114","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:40.037652141Z"}]},"request_id":"023d3298-4cce-46a6-a767-3466dd52a0d6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615882.2518632} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ded30a45f93ed4ce6db324a41d3ed0b6","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ded30a45f93ed4ce6db324a41d3ed0b6"} gateway-1 | {"time_local":"02/Aug/2024:16:24:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2da692c6-944d-49bf-a96e-e053a4ac8114? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ded30a45f93ed4ce6db324a41d3ed0b6"} device-1 | {"level":"info","message":"GET /devices/2da692c6-944d-49bf-a96e-e053a4ac8114? 200 20ms","method":"GET","requestID":"ded30a45f93ed4ce6db324a41d3ed0b6","responseTime":20,"status":200,"url":"/devices/2da692c6-944d-49bf-a96e-e053a4ac8114?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4Mn0.B6XqyS78EUtYCE999pX7tP4INSChs1_rLFuc73h2oP4","level":"info","message":"auth send jwt","requestID":"c26fb069260c468997484055a8ed8920"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c26fb069260c468997484055a8ed8920","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"c26fb069260c468997484055a8ed8920"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.273668,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c26fb069260c468997484055a8ed8920","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615882,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4Mn0.B6XqyS78EUtYCE999pX7tP4INSChs1_rLFuc73h2oP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c26fb069260c468997484055a8ed8920","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/860d0f73-9439-4da7-929f-4c12bbda20c5"},"level":"info","message":"Attempting to run experiment","requestID":"c26fb069260c468997484055a8ed8920"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/860d0f73-9439-4da7-929f-4c12bbda20c5"},"level":"info","message":"Attempting to book experiment","requestID":"c26fb069260c468997484055a8ed8920"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/860d0f73-9439-4da7-929f-4c12bbda20c5"},"level":"info","message":"Successfully booked experiment","requestID":"c26fb069260c468997484055a8ed8920"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b9016df0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b901bc10-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.052198,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b9016df0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615882,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4Mn0.B6XqyS78EUtYCE999pX7tP4INSChs1_rLFuc73h2oP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"b9016df0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46688","level":"info","msg":"Received request.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"client_addr":"127.0.0.1:46688","level":"info","msg":"Sent response.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.887862,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b901bc10-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615882,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4Mn0.B6XqyS78EUtYCE999pX7tP4INSChs1_rLFuc73h2oP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"b901bc10-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4e7c8d60-d9d0-494a-bd62-f491ddd0b894","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4e7c8d60-d9d0-494a-bd62-f491ddd0b894","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:39.989100564Z"}]},"request_id":"d319a654-3fcb-4338-9ee5-dd312531f45d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615882.3350713} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"b9016df0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2da692c6-944d-49bf-a96e-e053a4ac8114","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2da692c6-944d-49bf-a96e-e053a4ac8114","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:40.037652141Z"}]},"request_id":"33bfe3f0-5087-4f59-a78b-cce02acdca58","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615882.3421197} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b9016df0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b901bc10-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894? 200 25ms","method":"GET","requestID":"b9016df0-50eb-11ef-8434-2f6d198c7397","responseTime":25,"status":200,"url":"/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b901bc10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/2da692c6-944d-49bf-a96e-e053a4ac8114? 200 27ms","method":"GET","requestID":"b901bc10-50eb-11ef-8434-2f6d198c7397","responseTime":27,"status":200,"url":"/devices/2da692c6-944d-49bf-a96e-e053a4ac8114?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/860d0f73-9439-4da7-929f-4c12bbda20c5"},"level":"info","message":"Setting up experiment","requestID":"c26fb069260c468997484055a8ed8920"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/860d0f73-9439-4da7-929f-4c12bbda20c5"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"c26fb069260c468997484055a8ed8920"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/860d0f73-9439-4da7-929f-4c12bbda20c5"},"level":"info","message":"Successfully locked booking for experiment","requestID":"c26fb069260c468997484055a8ed8920"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/860d0f73-9439-4da7-929f-4c12bbda20c5"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"c26fb069260c468997484055a8ed8920"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/860d0f73-9439-4da7-929f-4c12bbda20c5"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"c26fb069260c468997484055a8ed8920"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/860d0f73-9439-4da7-929f-4c12bbda20c5"},"level":"info","message":"Attempting to update booking for experiment","requestID":"c26fb069260c468997484055a8ed8920"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/860d0f73-9439-4da7-929f-4c12bbda20c5"},"level":"info","message":"Successfully updated booking for experiment","requestID":"c26fb069260c468997484055a8ed8920"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/860d0f73-9439-4da7-929f-4c12bbda20c5"},"level":"info","message":"Successfully set up experiment","requestID":"c26fb069260c468997484055a8ed8920"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b90fece0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b9106210-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b910b030-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.302783,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"client_addr":"127.0.0.1:46688","level":"info","msg":"Received request.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:42Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/860d0f73-9439-4da7-929f-4c12bbda20c5"},"level":"info","message":"Successfully running experiment","requestID":"c26fb069260c468997484055a8ed8920"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b90fece0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615882,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4Mn0.B6XqyS78EUtYCE999pX7tP4INSChs1_rLFuc73h2oP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"b90fece0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46688","level":"info","msg":"Sent response.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.692295,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b9106210-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615882,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4Mn0.B6XqyS78EUtYCE999pX7tP4INSChs1_rLFuc73h2oP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"b9106210-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2da692c6-944d-49bf-a96e-e053a4ac8114","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2da692c6-944d-49bf-a96e-e053a4ac8114","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:40.037652141Z"}]},"request_id":"40add3cd-1445-4d03-8093-a2e47d315537","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615882.4396453} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"b9106210-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4e7c8d60-d9d0-494a-bd62-f491ddd0b894","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4e7c8d60-d9d0-494a-bd62-f491ddd0b894","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:39.989100564Z"}]},"request_id":"7d394d59-1d77-40b7-bd63-bee77a26962a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615882.4417198} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"b90fece0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46698","level":"info","msg":"Received request.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:42Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b9106210-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/2da692c6-944d-49bf-a96e-e053a4ac8114? 200 33ms","method":"GET","requestID":"b9106210-50eb-11ef-8434-2f6d198c7397","responseTime":33,"status":200,"url":"/devices/2da692c6-944d-49bf-a96e-e053a4ac8114?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b90fece0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4e7c8d60-d9d0-494a-bd62-f491ddd0b894","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3e784168-f4df-4b7c-88a4-c780cee8b8ae","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615882.4478936} authorization-1 | {"client_addr":"127.0.0.1:46698","level":"info","msg":"Sent response.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.990725,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:42Z"} device-1 | {"level":"info","message":"GET /devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894? 200 39ms","method":"GET","requestID":"b90fece0-50eb-11ef-8434-2f6d198c7397","responseTime":39,"status":200,"url":"/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b910b030-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 29ms","method":"POST","requestID":"b910b030-50eb-11ef-8434-2f6d198c7397","responseTime":29,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F860d0f73-9439-4da7-929f-4c12bbda20c5#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F860d0f73-9439-4da7-929f-4c12bbda20c5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"0a01dbb2-037e-4585-90b8-2f610c3c7ae9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615882.4528136} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3a1a7892-a157-4144-99d4-c2bd3c208a49","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615882.4534988} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b916a3a0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"c26fb069260c468997484055a8ed8920","responseTime":27,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b910b030-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:42Z"} device-1 | {"level":"info","message":"POST /devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894/signaling 200 44ms","method":"POST","requestID":"b910b030-50eb-11ef-8434-2f6d198c7397","responseTime":44,"status":200,"url":"/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4e7c8d60-d9d0-494a-bd62-f491ddd0b894","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f4e167f2-07fc-4645-952b-328e84d0c0e6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615882.4657905} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.952123,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b916a3a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894","object_type":"device","rebac_allow":false,"scope_allow":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":"b916a3a0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b9182a40-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/860d0f73-9439-4da7-929f-4c12bbda20c5","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"c26fb069260c468997484055a8ed8920"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:42Z"} gateway-1 | {"time_local":"02/Aug/2024:16:24:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.212","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c26fb069260c468997484055a8ed8920"} experiment-1 | {"level":"info","message":"POST /experiments? 201 206ms","method":"POST","requestID":"c26fb069260c468997484055a8ed8920","responseTime":206,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2da692c6-944d-49bf-a96e-e053a4ac8114","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3ab74fa4-f006-4499-8144-e040311a000b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615882.476039} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.202193,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:42Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b916a3a0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b9182a40-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114","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/4e7c8d60-d9d0-494a-bd62-f491ddd0b894/signaling 200 20ms","method":"POST","requestID":"b916a3a0-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"b9182a40-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4Mn0.B6XqyS78EUtYCE999pX7tP4INSChs1_rLFuc73h2oP4","level":"info","message":"auth send jwt","requestID":"80a1aa425c7e95a05a1a6e69dfdd779e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"80a1aa425c7e95a05a1a6e69dfdd779e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b919ff00-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"80a1aa425c7e95a05a1a6e69dfdd779e"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:42Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b9182a40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/2da692c6-944d-49bf-a96e-e053a4ac8114/signaling 200 17ms","method":"POST","requestID":"b9182a40-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/2da692c6-944d-49bf-a96e-e053a4ac8114/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2da692c6-944d-49bf-a96e-e053a4ac8114","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1f62df04-5972-4fc8-9573-861c0b79f27a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615882.4854798} authorization-1 | {"client_addr":"127.0.0.1:46688","level":"info","msg":"Received request.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.505179,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b919ff00-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114","object_type":"device","rebac_allow":false,"scope_allow":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":"b919ff00-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46688","level":"info","msg":"Sent response.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.238633,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"80a1aa425c7e95a05a1a6e69dfdd779e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615882,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4Mn0.B6XqyS78EUtYCE999pX7tP4INSChs1_rLFuc73h2oP4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b919ff00-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/2da692c6-944d-49bf-a96e-e053a4ac8114/signaling 200 11ms","method":"POST","requestID":"b919ff00-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/2da692c6-944d-49bf-a96e-e053a4ac8114/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"80a1aa425c7e95a05a1a6e69dfdd779e","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/860d0f73-9439-4da7-929f-4c12bbda20c5"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"c26fb069260c468997484055a8ed8920"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b91c21e0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4e7c8d60-d9d0-494a-bd62-f491ddd0b894","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4e7c8d60-d9d0-494a-bd62-f491ddd0b894","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:39.989100564Z"}]},"request_id":"fafbabc6-ae3c-4373-8f8a-4c6c268f6753","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615882.495693} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b91c7000-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"80a1aa425c7e95a05a1a6e69dfdd779e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"80a1aa425c7e95a05a1a6e69dfdd779e"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.664345,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"client_addr":"127.0.0.1:46688","level":"info","msg":"Received request.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:42Z"} gateway-1 | {"time_local":"02/Aug/2024:16:24:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"80a1aa425c7e95a05a1a6e69dfdd779e"} device-1 | {"level":"info","message":"GET /devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894? 200 18ms","method":"GET","requestID":"80a1aa425c7e95a05a1a6e69dfdd779e","responseTime":18,"status":200,"url":"/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b91c21e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615882,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4Mn0.B6XqyS78EUtYCE999pX7tP4INSChs1_rLFuc73h2oP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b91c21e0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46688","level":"info","msg":"Sent response.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.833181,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b91c7000-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615882,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4Mn0.B6XqyS78EUtYCE999pX7tP4INSChs1_rLFuc73h2oP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b91c7000-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4Mn0.B6XqyS78EUtYCE999pX7tP4INSChs1_rLFuc73h2oP4","level":"info","message":"auth send jwt","requestID":"bc37f3162ebc88da95f3ee1904052ee1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bc37f3162ebc88da95f3ee1904052ee1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bc37f3162ebc88da95f3ee1904052ee1"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4e7c8d60-d9d0-494a-bd62-f491ddd0b894","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4e7c8d60-d9d0-494a-bd62-f491ddd0b894","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:39.989100564Z"}]},"request_id":"eb5703c1-207b-4937-abfc-f1b63fc298f4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615882.5073571} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b91c21e0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2da692c6-944d-49bf-a96e-e053a4ac8114","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2da692c6-944d-49bf-a96e-e053a4ac8114","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:40.037652141Z"}]},"request_id":"006a18cb-252f-4def-8900-c967446677f2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615882.5091498} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b91c7000-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b91c21e0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.668067,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:42Z"} device-1 | {"level":"info","message":"GET /devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894? 200 19ms","method":"GET","requestID":"b91c21e0-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bc37f3162ebc88da95f3ee1904052ee1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615882,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4Mn0.B6XqyS78EUtYCE999pX7tP4INSChs1_rLFuc73h2oP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bc37f3162ebc88da95f3ee1904052ee1","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b91c7000-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/2da692c6-944d-49bf-a96e-e053a4ac8114? 200 22ms","method":"GET","requestID":"b91c7000-50eb-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/2da692c6-944d-49bf-a96e-e053a4ac8114?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2da692c6-944d-49bf-a96e-e053a4ac8114","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2da692c6-944d-49bf-a96e-e053a4ac8114","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:40.037652141Z"}]},"request_id":"9a765468-0ed1-4230-92c1-752054c4c987","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615882.5189278} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/860d0f73-9439-4da7-929f-4c12bbda20c5"},"level":"info","message":"Building connection plan","requestID":"c26fb069260c468997484055a8ed8920"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"a176218b-9337-4423-82d6-a9237d0fd6a9"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"05811e96-5c89-4ca5-aed7-50cff09c4594"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"9af4f978-4faa-4f19-8e8c-e050f7a1177d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"c26fb069260c468997484055a8ed8920"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bc37f3162ebc88da95f3ee1904052ee1","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"c26fb069260c468997484055a8ed8920"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"b92067a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bc37f3162ebc88da95f3ee1904052ee1"} gateway-1 | {"time_local":"02/Aug/2024:16:24:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2da692c6-944d-49bf-a96e-e053a4ac8114? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bc37f3162ebc88da95f3ee1904052ee1"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:42Z"} device-1 | {"level":"info","message":"GET /devices/2da692c6-944d-49bf-a96e-e053a4ac8114? 200 18ms","method":"GET","requestID":"bc37f3162ebc88da95f3ee1904052ee1","responseTime":18,"status":200,"url":"/devices/2da692c6-944d-49bf-a96e-e053a4ac8114?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.876463,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b92067a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615882,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4Mn0.B6XqyS78EUtYCE999pX7tP4INSChs1_rLFuc73h2oP4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b92067a0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"a553dacd-4d20-4ef9-8da5-f21d958a9ee5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615882.5366175} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fb15e3f3-d7d4-4519-a4ac-5f4a9bb68595","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615882.5369925} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"b92067a0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"b92067a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"b92067a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/51a2f3b8-135c-4311-9333-c51c118c9daf'","requestID":"b92067a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/51a2f3b8-135c-4311-9333-c51c118c9daf'","requestID":"b92067a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"b92067a0-50eb-11ef-8434-2f6d198c7397"} 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":"b92067a0-50eb-11ef-8434-2f6d198c7397","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":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"b92067a0-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/860d0f73-9439-4da7-929f-4c12bbda20c5"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"c26fb069260c468997484055a8ed8920"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b9298f60-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4e7c8d60-d9d0-494a-bd62-f491ddd0b894","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"695144f5-b06d-437f-997d-69bf989221a2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615882.5861158} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.103059,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b9298f60-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894","object_type":"device","rebac_allow":false,"scope_allow":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":"b9298f60-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b9298f60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894/signaling 200 8ms","method":"POST","requestID":"b9298f60-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b92b3d10-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:42Z"} device-1 | {"device":"2da692c6-944d-49bf-a96e-e053a4ac8114","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"2da692c6-944d-49bf-a96e-e053a4ac8114","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2da692c6-944d-49bf-a96e-e053a4ac8114","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6989c3d3-670f-4bd3-9d61-33d6616954c7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615882.598583} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.568824,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b92b3d10-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114","object_type":"device","rebac_allow":false,"scope_allow":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":"b92b3d10-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b92b3d10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/2da692c6-944d-49bf-a96e-e053a4ac8114/signaling 200 11ms","method":"POST","requestID":"b92b3d10-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/2da692c6-944d-49bf-a96e-e053a4ac8114/signaling"} device-1 | {"device":"4e7c8d60-d9d0-494a-bd62-f491ddd0b894","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"51a2f3b8-135c-4311-9333-c51c118c9daf","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 601255639744830366 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=msid-semantic: WMS\r\nm=application 9 DTLS/SCTP 5000\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:kyOm\r\na=ice-pwd:1NYal0o0+l27FHPWrNl1/9qj\r\na=ice-options:trickle\r\na=fingerprint:sha-256 CC:24:B0:4B:7E:A5:F3:49:73:8A:33:E5:6E:61:42:56:6E:8E:5D:5A:D8:D2:24:90:0C:A1:84:E1:FD:47:39:DF\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"2da692c6-944d-49bf-a96e-e053a4ac8114","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:361866950 1 udp 2113937151 4c3d24cc-8db7-40c8-8f44-2911d7b32b97.local 55201 typ host generation 0 ufrag kyOm network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2da692c6-944d-49bf-a96e-e053a4ac8114","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"2da692c6-944d-49bf-a96e-e053a4ac8114","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:499772673 1 udp 1677729535 141.24.211.56 55201 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag kyOm network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2da692c6-944d-49bf-a96e-e053a4ac8114","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"2da692c6-944d-49bf-a96e-e053a4ac8114","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/51a2f3b8-135c-4311-9333-c51c118c9daf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"51a2f3b8-135c-4311-9333-c51c118c9daf","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"92e34aa6f8de380f1593f3fdc29e3035","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":"92e34aa6f8de380f1593f3fdc29e3035","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/2da692c6-944d-49bf-a96e-e053a4ac8114'"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/51a2f3b8-135c-4311-9333-c51c118c9daf"}}},"level":"info","message":"received a callback","requestID":"92e34aa6f8de380f1593f3fdc29e3035"} device-1 | {"device":"4e7c8d60-d9d0-494a-bd62-f491ddd0b894","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"4e7c8d60-d9d0-494a-bd62-f491ddd0b894","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"4e7c8d60-d9d0-494a-bd62-f491ddd0b894","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"92e34aa6f8de380f1593f3fdc29e3035","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24: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.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"92e34aa6f8de380f1593f3fdc29e3035"} device-1 | {"data":{"peerconnection":"51a2f3b8-135c-4311-9333-c51c118c9daf","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"4e7c8d60-d9d0-494a-bd62-f491ddd0b894","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"2da692c6-944d-49bf-a96e-e053a4ac8114","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"4e7c8d60-d9d0-494a-bd62-f491ddd0b894","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"51a2f3b8-135c-4311-9333-c51c118c9daf","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"2da692c6-944d-49bf-a96e-e053a4ac8114","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/51a2f3b8-135c-4311-9333-c51c118c9daf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"51a2f3b8-135c-4311-9333-c51c118c9daf","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9f3c05902f5d6be111c066f3c4797109","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":"9f3c05902f5d6be111c066f3c4797109","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/51a2f3b8-135c-4311-9333-c51c118c9daf"}}},"level":"info","message":"received a callback","requestID":"9f3c05902f5d6be111c066f3c4797109"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"ba687800-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:44Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F51a2f3b8-135c-4311-9333-c51c118c9daf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"00cbccd9-b82b-4bff-ac37-a85dc1aecf3d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615884.6765964} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.215019,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/51a2f3b8-135c-4311-9333-c51c118c9daf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ba687800-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/51a2f3b8-135c-4311-9333-c51c118c9daf","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":"ba687800-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"ba687800-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/51a2f3b8-135c-4311-9333-c51c118c9daf 200 8ms","method":"GET","requestID":"ba687800-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/peerconnections/51a2f3b8-135c-4311-9333-c51c118c9daf"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 37ms","method":"POST","requestID":"9f3c05902f5d6be111c066f3c4797109","responseTime":37,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24: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.040","http_referrer":"","http_user_agent":"node-fetch","requestID":"9f3c05902f5d6be111c066f3c4797109"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ba6d8110-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:44Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2da692c6-944d-49bf-a96e-e053a4ac8114","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"68c7d874-692f-44b8-b8f5-e503172662bf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615884.711193} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.774644,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ba6d8110-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114","object_type":"device","rebac_allow":false,"scope_allow":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":"ba6d8110-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ba6d8110-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/2da692c6-944d-49bf-a96e-e053a4ac8114/signaling 200 11ms","method":"POST","requestID":"ba6d8110-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/2da692c6-944d-49bf-a96e-e053a4ac8114/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ba6f7ce0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:44Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4e7c8d60-d9d0-494a-bd62-f491ddd0b894","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f55e61d1-9353-4be6-b63f-99c5a2113339","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615884.7238412} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.333391,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ba6f7ce0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894","object_type":"device","rebac_allow":false,"scope_allow":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":"ba6f7ce0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ba6f7ce0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894/signaling 200 11ms","method":"POST","requestID":"ba6f7ce0-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NH0.mnbi82GxOWfFtEGfjWFJYLBg_RErgAOAX1pLQfSPZx8","level":"info","message":"auth send jwt","requestID":"c34747a04b8bcb14213476d5a68f5c51"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c34747a04b8bcb14213476d5a68f5c51","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/860d0f73-9439-4da7-929f-4c12bbda20c5","requestID":"c34747a04b8bcb14213476d5a68f5c51"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:44Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.473192,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/860d0f73-9439-4da7-929f-4c12bbda20c5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c34747a04b8bcb14213476d5a68f5c51","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/860d0f73-9439-4da7-929f-4c12bbda20c5","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615884,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NH0.mnbi82GxOWfFtEGfjWFJYLBg_RErgAOAX1pLQfSPZx8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c34747a04b8bcb14213476d5a68f5c51","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/860d0f73-9439-4da7-929f-4c12bbda20c5","requestID":"c34747a04b8bcb14213476d5a68f5c51"} gateway-1 | {"time_local":"02/Aug/2024:16:24:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/860d0f73-9439-4da7-929f-4c12bbda20c5 HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c34747a04b8bcb14213476d5a68f5c51"} experiment-1 | {"level":"info","message":"GET /experiments/860d0f73-9439-4da7-929f-4c12bbda20c5 200 16ms","method":"GET","requestID":"c34747a04b8bcb14213476d5a68f5c51","responseTime":16,"status":200,"url":"/experiments/860d0f73-9439-4da7-929f-4c12bbda20c5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NH0.mnbi82GxOWfFtEGfjWFJYLBg_RErgAOAX1pLQfSPZx8","level":"info","message":"auth send jwt","requestID":"2e65a5af11e94f51b06eb842afced7af"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2e65a5af11e94f51b06eb842afced7af","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/860d0f73-9439-4da7-929f-4c12bbda20c5","requestID":"2e65a5af11e94f51b06eb842afced7af"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:44Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.951789,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:44Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/860d0f73-9439-4da7-929f-4c12bbda20c5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"2e65a5af11e94f51b06eb842afced7af","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/860d0f73-9439-4da7-929f-4c12bbda20c5","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615884,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NH0.mnbi82GxOWfFtEGfjWFJYLBg_RErgAOAX1pLQfSPZx8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2e65a5af11e94f51b06eb842afced7af","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/860d0f73-9439-4da7-929f-4c12bbda20c5"},"level":"info","message":"Attempting to finish experiment","requestID":"2e65a5af11e94f51b06eb842afced7af"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"ba7d3880-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:44Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.324686,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:44Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/51a2f3b8-135c-4311-9333-c51c118c9daf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ba7d3880-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/51a2f3b8-135c-4311-9333-c51c118c9daf","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615884,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NH0.mnbi82GxOWfFtEGfjWFJYLBg_RErgAOAX1pLQfSPZx8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ba7d3880-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/51a2f3b8-135c-4311-9333-c51c118c9daf","device":"2da692c6-944d-49bf-a96e-e053a4ac8114","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"4e7c8d60-d9d0-494a-bd62-f491ddd0b894","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"4e7c8d60-d9d0-494a-bd62-f491ddd0b894","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"4e7c8d60-d9d0-494a-bd62-f491ddd0b894","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/51a2f3b8-135c-4311-9333-c51c118c9daf' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/51a2f3b8-135c-4311-9333-c51c118c9daf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"51a2f3b8-135c-4311-9333-c51c118c9daf","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F51a2f3b8-135c-4311-9333-c51c118c9daf': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F51a2f3b8-135c-4311-9333-c51c118c9daf","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"928f2412-ce64-4e2b-84f8-21d40a3a5772","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615884.8388803} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"86df753d-8708-4803-9395-aca7fb88c7b6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615884.8394024} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9c493512b7410482b4c183c9cc12d8da","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":"9c493512b7410482b4c183c9cc12d8da","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"ba7d3880-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d412fcec29ddbf7428ac151bde765346","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":"d412fcec29ddbf7428ac151bde765346","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/51a2f3b8-135c-4311-9333-c51c118c9daf"}}},"level":"info","message":"received a callback","requestID":"9c493512b7410482b4c183c9cc12d8da"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/51a2f3b8-135c-4311-9333-c51c118c9daf"}}},"level":"info","message":"received a callback","requestID":"d412fcec29ddbf7428ac151bde765346"} device-1 | {"data":{"peerconnection":"51a2f3b8-135c-4311-9333-c51c118c9daf","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"ba7d3880-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/51a2f3b8-135c-4311-9333-c51c118c9daf 204 58ms","method":"DELETE","requestID":"ba7d3880-50eb-11ef-8434-2f6d198c7397","responseTime":58,"status":204,"url":"/peerconnections/51a2f3b8-135c-4311-9333-c51c118c9daf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/860d0f73-9439-4da7-929f-4c12bbda20c5"},"level":"info","message":"Successfully finished experiment","requestID":"2e65a5af11e94f51b06eb842afced7af"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ba8b1b30-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:44Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2da692c6-944d-49bf-a96e-e053a4ac8114","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ebe4578c-0fe7-4a41-8ecc-b9f8525c62a8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615884.907629} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.062107,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ba8b1b30-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2da692c6-944d-49bf-a96e-e053a4ac8114","object_type":"device","rebac_allow":false,"scope_allow":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":"ba8b1b30-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ba8b1b30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/2da692c6-944d-49bf-a96e-e053a4ac8114/signaling 200 17ms","method":"POST","requestID":"ba8b1b30-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/2da692c6-944d-49bf-a96e-e053a4ac8114/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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8ba481ad-3d95-4f9a-8f25-d25ee41c6fe2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615884.9171946} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F860d0f73-9439-4da7-929f-4c12bbda20c5': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F860d0f73-9439-4da7-929f-4c12bbda20c5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"ec39e36a-6aa4-44a4-9f46-25fb39fe95df","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615884.917989} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ba8e7690-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"2e65a5af11e94f51b06eb842afced7af","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:44Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4e7c8d60-d9d0-494a-bd62-f491ddd0b894","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8cbb6e4b-0c23-4c81-826d-e8a5346c8c45","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615884.928347} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.583768,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ba8e7690-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894","object_type":"device","rebac_allow":false,"scope_allow":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":"ba8e7690-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ba8e7690-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894/signaling 200 14ms","method":"POST","requestID":"ba8e7690-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/860d0f73-9439-4da7-929f-4c12bbda20c5","requestID":"2e65a5af11e94f51b06eb842afced7af"} gateway-1 | {"time_local":"02/Aug/2024:16:24:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/860d0f73-9439-4da7-929f-4c12bbda20c5 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.212","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2e65a5af11e94f51b06eb842afced7af"} gateway-1 | {"time_local":"02/Aug/2024:16:24:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3027","request_time":"4.371","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"a16e4333c6645f4155e88762351f9a6a"} experiment-1 | {"level":"info","message":"DELETE /experiments/860d0f73-9439-4da7-929f-4c12bbda20c5 204 208ms","method":"DELETE","requestID":"2e65a5af11e94f51b06eb842afced7af","responseTime":208,"status":204,"url":"/experiments/860d0f73-9439-4da7-929f-4c12bbda20c5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 155ms","method":"POST","requestID":"9c493512b7410482b4c183c9cc12d8da","responseTime":155,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24:45 +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.162","http_referrer":"","http_user_agent":"node-fetch","requestID":"9c493512b7410482b4c183c9cc12d8da"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 155ms","method":"POST","requestID":"d412fcec29ddbf7428ac151bde765346","responseTime":155,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24:45 +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":"d412fcec29ddbf7428ac151bde765346"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA","level":"info","message":"auth send jwt","requestID":"8427476e74c0c89472aaaab513608b2b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8427476e74c0c89472aaaab513608b2b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8427476e74c0c89472aaaab513608b2b"} gateway-1 | {"time_local":"02/Aug/2024:16:24:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2891","request_time":"2.904","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":"05d0c5cb7b8e27c55beaf6cb08792859"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.898706,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:45Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/4e7c8d60-d9d0-494a-bd62-f491ddd0b894' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"8427476e74c0c89472aaaab513608b2b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615885,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8427476e74c0c89472aaaab513608b2b","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd150441-7b17-42ee-9c19-cb74d2ba4f75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"01ec75d9-e108-4d78-af6c-25fed5947ec5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.022112} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8427476e74c0c89472aaaab513608b2b","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/2da692c6-944d-49bf-a96e-e053a4ac8114' 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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8a66d0e0-fcb5-46d3-8562-5155e68afad2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.0299556} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"8427476e74c0c89472aaaab513608b2b","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd150441-7b17-42ee-9c19-cb74d2ba4f75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"4818e905-c527-4349-8980-86d7171a5709","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.0397434} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"039006f3-9a08-4400-8302-be3e9e970866","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.0402315} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"8427476e74c0c89472aaaab513608b2b","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd150441-7b17-42ee-9c19-cb74d2ba4f75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd150441-7b17-42ee-9c19-cb74d2ba4f75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:45.039729138Z"}]},"request_id":"2026b831-4818-48b6-9d08-09943b33e623","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.0454698} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8427476e74c0c89472aaaab513608b2b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8427476e74c0c89472aaaab513608b2b"} gateway-1 | {"time_local":"02/Aug/2024:16:24:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8427476e74c0c89472aaaab513608b2b"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"8427476e74c0c89472aaaab513608b2b","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA","level":"info","message":"auth send jwt","requestID":"71f72bc634cc16a25c28cddc40f13b7c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"71f72bc634cc16a25c28cddc40f13b7c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"71f72bc634cc16a25c28cddc40f13b7c"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.937399,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"71f72bc634cc16a25c28cddc40f13b7c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615885,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"71f72bc634cc16a25c28cddc40f13b7c","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8922e99-cc9f-4537-849a-40e5490dd7e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7c326b4d-e4ca-45ed-94a9-4647f462b43b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.072347} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"71f72bc634cc16a25c28cddc40f13b7c","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"299f95e0-cfbd-4c0c-95f4-4c9e85dd2cc4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.0779395} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"71f72bc634cc16a25c28cddc40f13b7c","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8922e99-cc9f-4537-849a-40e5490dd7e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"dbe4d5b3-9118-46e2-a317-3acf3e014a03","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.0952222} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fe264e10-05e7-463e-8590-2927b44ccbc2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.0955095} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"71f72bc634cc16a25c28cddc40f13b7c","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8922e99-cc9f-4537-849a-40e5490dd7e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8922e99-cc9f-4537-849a-40e5490dd7e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:45.095206776Z"}]},"request_id":"036e7af0-9c16-42ff-813a-368fb519c031","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.1019568} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"71f72bc634cc16a25c28cddc40f13b7c","responseTime":5,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"02/Aug/2024:16:24:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"71f72bc634cc16a25c28cddc40f13b7c"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"71f72bc634cc16a25c28cddc40f13b7c"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"71f72bc634cc16a25c28cddc40f13b7c","responseTime":52,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA","level":"info","message":"auth send jwt","requestID":"4a00512fdb0412080f75b6a4cca5d598"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4a00512fdb0412080f75b6a4cca5d598","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA","level":"info","message":"auth send jwt","requestID":"4fb28be72a561589677427808ffa0d33"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4fb28be72a561589677427808ffa0d33","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4a00512fdb0412080f75b6a4cca5d598"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4fb28be72a561589677427808ffa0d33"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.138426,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46688","level":"info","msg":"Received request.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"4a00512fdb0412080f75b6a4cca5d598","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615885,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4a00512fdb0412080f75b6a4cca5d598","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46688","level":"info","msg":"Sent response.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.895628,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"4fb28be72a561589677427808ffa0d33","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615885,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4fb28be72a561589677427808ffa0d33","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8922e99-cc9f-4537-849a-40e5490dd7e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8922e99-cc9f-4537-849a-40e5490dd7e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:45.095206776Z"}]},"request_id":"d9a11b03-7e14-4314-a045-83a08fdd6e8a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.6644943} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"4a00512fdb0412080f75b6a4cca5d598","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd150441-7b17-42ee-9c19-cb74d2ba4f75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd150441-7b17-42ee-9c19-cb74d2ba4f75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:45.039729138Z"}]},"request_id":"87f0b577-4e49-4f7e-98ba-27be917b5aa5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.666427} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4fb28be72a561589677427808ffa0d33","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"808a3c3e-d5c6-4815-bc75-bd2214edf969","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.6736877} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"4a00512fdb0412080f75b6a4cca5d598","responseTime":6,"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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c49f4f27-a0fd-405f-8a72-621557fcbc81","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.6759841} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4fb28be72a561589677427808ffa0d33","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd150441-7b17-42ee-9c19-cb74d2ba4f75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd150441-7b17-42ee-9c19-cb74d2ba4f75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:45.039729138Z"}]},"request_id":"9059318e-fb64-4fa5-bbe7-ca89d799adba","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.6807323} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4fb28be72a561589677427808ffa0d33","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4fb28be72a561589677427808ffa0d33"} gateway-1 | {"time_local":"02/Aug/2024:16:24:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.045","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"4fb28be72a561589677427808ffa0d33"} device-1 | {"level":"info","message":"PATCH /devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75 200 37ms","method":"PATCH","requestID":"4fb28be72a561589677427808ffa0d33","responseTime":37,"status":200,"url":"/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA","level":"info","message":"auth send jwt","requestID":"8ae2d6200c7d32e1485fb7ac03249ae9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8ae2d6200c7d32e1485fb7ac03249ae9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8ae2d6200c7d32e1485fb7ac03249ae9"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8922e99-cc9f-4537-849a-40e5490dd7e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8922e99-cc9f-4537-849a-40e5490dd7e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:45.095206776Z"}]},"request_id":"aaa9d120-8494-4db0-8926-b65f85518e46","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.6927705} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"4a00512fdb0412080f75b6a4cca5d598","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.19941,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:45Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4a00512fdb0412080f75b6a4cca5d598"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"8ae2d6200c7d32e1485fb7ac03249ae9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615885,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA"} gateway-1 | {"time_local":"02/Aug/2024:16:24:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f8922e99-cc9f-4537-849a-40e5490dd7e3 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.058","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"4a00512fdb0412080f75b6a4cca5d598"} device-1 | {"level":"info","message":"PATCH /devices/f8922e99-cc9f-4537-849a-40e5490dd7e3 200 52ms","method":"PATCH","requestID":"4a00512fdb0412080f75b6a4cca5d598","responseTime":52,"status":200,"url":"/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8ae2d6200c7d32e1485fb7ac03249ae9","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA","level":"info","message":"auth send jwt","requestID":"92df0cf693194cdf963486c76462200a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"92df0cf693194cdf963486c76462200a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"92df0cf693194cdf963486c76462200a"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.874238,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"92df0cf693194cdf963486c76462200a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615885,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"92df0cf693194cdf963486c76462200a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8ae2d6200c7d32e1485fb7ac03249ae9"} gateway-1 | {"time_local":"02/Aug/2024:16:24:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"8ae2d6200c7d32e1485fb7ac03249ae9"} device-1 | {"level":"info","message":"POST /devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75/websocket 200 23ms","method":"POST","requestID":"8ae2d6200c7d32e1485fb7ac03249ae9","responseTime":23,"status":200,"url":"/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"92df0cf693194cdf963486c76462200a"} gateway-1 | {"time_local":"02/Aug/2024:16:24:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f8922e99-cc9f-4537-849a-40e5490dd7e3/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"92df0cf693194cdf963486c76462200a"} device-1 | {"level":"info","message":"POST /devices/f8922e99-cc9f-4537-849a-40e5490dd7e3/websocket 200 19ms","method":"POST","requestID":"92df0cf693194cdf963486c76462200a","responseTime":19,"status":200,"url":"/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA","level":"info","message":"auth send jwt","requestID":"e07ef3d5f72521d78a0cc1be3a0276f4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e07ef3d5f72521d78a0cc1be3a0276f4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e07ef3d5f72521d78a0cc1be3a0276f4"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.774046,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e07ef3d5f72521d78a0cc1be3a0276f4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615885,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e07ef3d5f72521d78a0cc1be3a0276f4","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd150441-7b17-42ee-9c19-cb74d2ba4f75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd150441-7b17-42ee-9c19-cb74d2ba4f75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:45.039729138Z"}]},"request_id":"58fe27d3-4f85-4cec-a83b-4de65c4758a4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.76492} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e07ef3d5f72521d78a0cc1be3a0276f4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e07ef3d5f72521d78a0cc1be3a0276f4"} gateway-1 | {"time_local":"02/Aug/2024:16:24:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e07ef3d5f72521d78a0cc1be3a0276f4"} device-1 | {"level":"info","message":"GET /devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75? 200 18ms","method":"GET","requestID":"e07ef3d5f72521d78a0cc1be3a0276f4","responseTime":18,"status":200,"url":"/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA","level":"info","message":"auth send jwt","requestID":"1625a9c32ab07b9d3ac8a719fd37276d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1625a9c32ab07b9d3ac8a719fd37276d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1625a9c32ab07b9d3ac8a719fd37276d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.371681,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1625a9c32ab07b9d3ac8a719fd37276d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615885,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1625a9c32ab07b9d3ac8a719fd37276d","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8922e99-cc9f-4537-849a-40e5490dd7e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8922e99-cc9f-4537-849a-40e5490dd7e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:45.095206776Z"}]},"request_id":"1653093b-91dc-4f72-9cf9-b745307363e2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.7903876} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1625a9c32ab07b9d3ac8a719fd37276d","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1625a9c32ab07b9d3ac8a719fd37276d"} device-1 | {"level":"info","message":"GET /devices/f8922e99-cc9f-4537-849a-40e5490dd7e3? 200 21ms","method":"GET","requestID":"1625a9c32ab07b9d3ac8a719fd37276d","responseTime":21,"status":200,"url":"/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3?"} gateway-1 | {"time_local":"02/Aug/2024:16:24:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f8922e99-cc9f-4537-849a-40e5490dd7e3? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1625a9c32ab07b9d3ac8a719fd37276d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA","level":"info","message":"auth send jwt","requestID":"e75e145b4a93603b07a2265265f2ea47"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e75e145b4a93603b07a2265265f2ea47","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"e75e145b4a93603b07a2265265f2ea47"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.629604,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e75e145b4a93603b07a2265265f2ea47","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615885,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e75e145b4a93603b07a2265265f2ea47","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2"},"level":"info","message":"Attempting to run experiment","requestID":"e75e145b4a93603b07a2265265f2ea47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2"},"level":"info","message":"Attempting to book experiment","requestID":"e75e145b4a93603b07a2265265f2ea47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2"},"level":"info","message":"Successfully booked experiment","requestID":"e75e145b4a93603b07a2265265f2ea47"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bb1d9730-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bb1dbe40-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.807655,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bb1d9730-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615885,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bb1d9730-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46688","level":"info","msg":"Received request.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46688","level":"info","msg":"Sent response.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.676713,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bb1dbe40-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615885,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bb1dbe40-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd150441-7b17-42ee-9c19-cb74d2ba4f75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd150441-7b17-42ee-9c19-cb74d2ba4f75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:45.039729138Z"}]},"request_id":"6d028850-1362-4502-aa75-6b2abdfb47cd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.8676634} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bb1d9730-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8922e99-cc9f-4537-849a-40e5490dd7e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8922e99-cc9f-4537-849a-40e5490dd7e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:45.095206776Z"}]},"request_id":"588eaf41-6b58-43af-8e04-ecae72af6539","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.868845} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bb1dbe40-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bb1d9730-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75? 200 14ms","method":"GET","requestID":"bb1d9730-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bb1dbe40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/f8922e99-cc9f-4537-849a-40e5490dd7e3? 200 14ms","method":"GET","requestID":"bb1dbe40-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2"},"level":"info","message":"Setting up experiment","requestID":"e75e145b4a93603b07a2265265f2ea47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"e75e145b4a93603b07a2265265f2ea47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2"},"level":"info","message":"Successfully locked booking for experiment","requestID":"e75e145b4a93603b07a2265265f2ea47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"e75e145b4a93603b07a2265265f2ea47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"e75e145b4a93603b07a2265265f2ea47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2"},"level":"info","message":"Attempting to update booking for experiment","requestID":"e75e145b4a93603b07a2265265f2ea47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2"},"level":"info","message":"Successfully updated booking for experiment","requestID":"e75e145b4a93603b07a2265265f2ea47"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2"},"level":"info","message":"Successfully set up experiment","requestID":"e75e145b4a93603b07a2265265f2ea47"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bb275b30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bb278240-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bb27d060-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.933987,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46688","level":"info","msg":"Received request.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bb275b30-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615885,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bb275b30-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2"},"level":"info","message":"Successfully running experiment","requestID":"e75e145b4a93603b07a2265265f2ea47"} authorization-1 | {"client_addr":"127.0.0.1:46688","level":"info","msg":"Sent response.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.027078,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bb278240-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615885,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"bb278240-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.084618,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd150441-7b17-42ee-9c19-cb74d2ba4f75","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a229bf32-0fc7-4835-9e53-6a0ef5ce6673","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.9348116} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd150441-7b17-42ee-9c19-cb74d2ba4f75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd150441-7b17-42ee-9c19-cb74d2ba4f75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:45.039729138Z"}]},"request_id":"d398983b-2c75-4ed4-8874-455ef7a1155b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.936605} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bb27d060-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75","object_type":"device","rebac_allow":false,"scope_allow":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":"bb27d060-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"bb275b30-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8922e99-cc9f-4537-849a-40e5490dd7e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8922e99-cc9f-4537-849a-40e5490dd7e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:45.095206776Z"}]},"request_id":"43cb15dc-6f58-4ee0-8ae0-fe85bac99da4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.94034} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"bb278240-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bb27d060-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75/signaling 200 21ms","method":"POST","requestID":"bb27d060-50eb-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bb275b30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75? 200 26ms","method":"GET","requestID":"bb275b30-50eb-11ef-8434-2f6d198c7397","responseTime":26,"status":200,"url":"/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bb278240-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/f8922e99-cc9f-4537-849a-40e5490dd7e3? 200 27ms","method":"GET","requestID":"bb278240-50eb-11ef-8434-2f6d198c7397","responseTime":27,"status":200,"url":"/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bb2bc800-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bb2c1620-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8922e99-cc9f-4537-849a-40e5490dd7e3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"820fdf85-9f18-413a-9f47-8ac37417b192","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.9570808} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd150441-7b17-42ee-9c19-cb74d2ba4f75","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3b8c6b1c-bd72-4639-8b33-e85a96199c31","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.958789} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe11951c5-1f55-4f00-a6b4-917fd9c58dc2#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe11951c5-1f55-4f00-a6b4-917fd9c58dc2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"c0f8350d-f3a0-43f4-a693-7b97b9fbd053","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.9595442} authorization-1 | {"client_addr":"127.0.0.1:46688","level":"info","msg":"Received request.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.524063,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46688","level":"info","msg":"Sent response.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.150932,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bb2bc800-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3","object_type":"device","rebac_allow":false,"scope_allow":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":"bb2bc800-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bb2c1620-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75","object_type":"device","rebac_allow":false,"scope_allow":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":"bb2c1620-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0d92cebb-f9a3-47ec-bbc1-95fb888f5676","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.9599864} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"e75e145b4a93603b07a2265265f2ea47","responseTime":28,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bb2bc800-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f8922e99-cc9f-4537-849a-40e5490dd7e3/signaling 200 13ms","method":"POST","requestID":"bb2bc800-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bb2c1620-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75/signaling 200 12ms","method":"POST","requestID":"bb2c1620-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bb2e8720-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"e75e145b4a93603b07a2265265f2ea47"} gateway-1 | {"time_local":"02/Aug/2024:16:24:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"816","request_time":"0.158","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e75e145b4a93603b07a2265265f2ea47"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8922e99-cc9f-4537-849a-40e5490dd7e3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"714d4a50-bddf-41b0-bd92-93484aca996c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.9755511} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.620846,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bb2e8720-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3","object_type":"device","rebac_allow":false,"scope_allow":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":"bb2e8720-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA","level":"info","message":"auth send jwt","requestID":"92540b9148a66855d1101736c2410951"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"92540b9148a66855d1101736c2410951","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"92540b9148a66855d1101736c2410951"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bb2e8720-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:45Z"} device-1 | {"level":"info","message":"POST /devices/f8922e99-cc9f-4537-849a-40e5490dd7e3/signaling 200 13ms","method":"POST","requestID":"bb2e8720-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3/signaling"} experiment-1 | {"level":"info","message":"POST /experiments? 201 162ms","method":"POST","requestID":"e75e145b4a93603b07a2265265f2ea47","responseTime":162,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.878989,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"92540b9148a66855d1101736c2410951","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615885,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"e75e145b4a93603b07a2265265f2ea47"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"92540b9148a66855d1101736c2410951","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bb311f30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bb314640-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd150441-7b17-42ee-9c19-cb74d2ba4f75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd150441-7b17-42ee-9c19-cb74d2ba4f75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:45.039729138Z"}]},"request_id":"64d0b008-c9d3-448d-8067-58cbf96bd4f5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.9888642} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"92540b9148a66855d1101736c2410951","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.297555,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"client_addr":"127.0.0.1:46688","level":"info","msg":"Received request.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bb311f30-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615885,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"92540b9148a66855d1101736c2410951"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bb311f30-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46688","level":"info","msg":"Sent response.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.692077,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:45Z"} gateway-1 | {"time_local":"02/Aug/2024:16:24:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"92540b9148a66855d1101736c2410951"} device-1 | {"level":"info","message":"GET /devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75? 200 13ms","method":"GET","requestID":"92540b9148a66855d1101736c2410951","responseTime":13,"status":200,"url":"/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bb314640-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615885,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bb314640-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA","level":"info","message":"auth send jwt","requestID":"b750a22494ad4f4178b4f7a764857b66"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b750a22494ad4f4178b4f7a764857b66","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd150441-7b17-42ee-9c19-cb74d2ba4f75","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd150441-7b17-42ee-9c19-cb74d2ba4f75","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:45.039729138Z"}]},"request_id":"4f8a5a77-3ef7-4900-8ec3-aadea672e77b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.9981587} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b750a22494ad4f4178b4f7a764857b66"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bb311f30-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8922e99-cc9f-4537-849a-40e5490dd7e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8922e99-cc9f-4537-849a-40e5490dd7e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:45.095206776Z"}]},"request_id":"daf38a5b-364f-40ab-bbac-2306c9d3bfe8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615885.9992378} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bb314640-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.740355,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b750a22494ad4f4178b4f7a764857b66","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615885,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b750a22494ad4f4178b4f7a764857b66","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bb311f30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75? 200 19ms","method":"GET","requestID":"bb311f30-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bb314640-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/f8922e99-cc9f-4537-849a-40e5490dd7e3? 200 19ms","method":"GET","requestID":"bb314640-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8922e99-cc9f-4537-849a-40e5490dd7e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8922e99-cc9f-4537-849a-40e5490dd7e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:45.095206776Z"}]},"request_id":"63cb0ebb-7b7b-4bcb-a7b9-92c2e2f217c0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615886.0071936} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2"},"level":"info","message":"Building connection plan","requestID":"e75e145b4a93603b07a2265265f2ea47"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"37244c61-8748-4325-b6d7-a9f9fb34d7f5"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"7763bb75-67c6-4f29-90f5-090f3d5c3b04"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"b6d61e70-d5d3-45bd-8cbd-b654d4aaa95f"}]},"level":"info","message":"Built pairwise service configurations","requestID":"e75e145b4a93603b07a2265265f2ea47"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b750a22494ad4f4178b4f7a764857b66","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"e75e145b4a93603b07a2265265f2ea47"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"bb34c8b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b750a22494ad4f4178b4f7a764857b66"} gateway-1 | {"time_local":"02/Aug/2024:16:24:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f8922e99-cc9f-4537-849a-40e5490dd7e3? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b750a22494ad4f4178b4f7a764857b66"} device-1 | {"level":"info","message":"GET /devices/f8922e99-cc9f-4537-849a-40e5490dd7e3? 200 14ms","method":"GET","requestID":"b750a22494ad4f4178b4f7a764857b66","responseTime":14,"status":200,"url":"/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.62453,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bb34c8b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615885,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4NX0.5uOs2DWj_2ufOpwKuL_Uzq-OzMRgqNp6UkVXFBsRKeA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bb34c8b0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"33a37767-be32-4f47-9771-4f881ba7a6b7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615886.023766} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1dc36843-fb03-4a7b-a361-c438c0095383","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615886.0239775} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"bb34c8b0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"bb34c8b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"bb34c8b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/c77c2abe-76df-40fe-ae41-98612e35a320'","requestID":"bb34c8b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/c77c2abe-76df-40fe-ae41-98612e35a320'","requestID":"bb34c8b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"bb34c8b0-50eb-11ef-8434-2f6d198c7397"} 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":"bb34c8b0-50eb-11ef-8434-2f6d198c7397","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":"bb34c8b0-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"e75e145b4a93603b07a2265265f2ea47"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bb3d2d20-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:46Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd150441-7b17-42ee-9c19-cb74d2ba4f75","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4cf75112-b1a7-4dce-a949-18ba4d2fb5a4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615886.0707831} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.425976,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bb3d2d20-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75","object_type":"device","rebac_allow":false,"scope_allow":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":"bb3d2d20-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bb3d2d20-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75/signaling 200 9ms","method":"POST","requestID":"bb3d2d20-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bb3eb3c0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:46Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8922e99-cc9f-4537-849a-40e5490dd7e3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"65d824a9-db12-4de5-aa24-d725a3744649","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615886.0809572} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.267107,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bb3eb3c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3","object_type":"device","rebac_allow":false,"scope_allow":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":"bb3eb3c0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bb3eb3c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f8922e99-cc9f-4537-849a-40e5490dd7e3/signaling 200 9ms","method":"POST","requestID":"bb3eb3c0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3/signaling"} device-1 | {"device":"cd150441-7b17-42ee-9c19-cb74d2ba4f75","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"c77c2abe-76df-40fe-ae41-98612e35a320","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"f8922e99-cc9f-4537-849a-40e5490dd7e3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"c77c2abe-76df-40fe-ae41-98612e35a320","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"f8922e99-cc9f-4537-849a-40e5490dd7e3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f8922e99-cc9f-4537-849a-40e5490dd7e3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f8922e99-cc9f-4537-849a-40e5490dd7e3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f8922e99-cc9f-4537-849a-40e5490dd7e3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c77c2abe-76df-40fe-ae41-98612e35a320' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c77c2abe-76df-40fe-ae41-98612e35a320","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d19169149255f30bdde67c2956527a87","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":"d19169149255f30bdde67c2956527a87","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/c77c2abe-76df-40fe-ae41-98612e35a320"}}},"level":"info","message":"received a callback","requestID":"d19169149255f30bdde67c2956527a87"} device-1 | {"device":"cd150441-7b17-42ee-9c19-cb74d2ba4f75","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"cd150441-7b17-42ee-9c19-cb74d2ba4f75","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"cd150441-7b17-42ee-9c19-cb74d2ba4f75","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"d19169149255f30bdde67c2956527a87","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24: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.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"d19169149255f30bdde67c2956527a87"} device-1 | {"data":{"peerconnection":"c77c2abe-76df-40fe-ae41-98612e35a320","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"f8922e99-cc9f-4537-849a-40e5490dd7e3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"cd150441-7b17-42ee-9c19-cb74d2ba4f75","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f8922e99-cc9f-4537-849a-40e5490dd7e3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"cd150441-7b17-42ee-9c19-cb74d2ba4f75","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"c77c2abe-76df-40fe-ae41-98612e35a320","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/c77c2abe-76df-40fe-ae41-98612e35a320' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c77c2abe-76df-40fe-ae41-98612e35a320","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"51f4834587044dcbc21a20fdb9fc9cac","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":"51f4834587044dcbc21a20fdb9fc9cac","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/c77c2abe-76df-40fe-ae41-98612e35a320"}}},"level":"info","message":"received a callback","requestID":"51f4834587044dcbc21a20fdb9fc9cac"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"bc7a19f0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:48Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc77c2abe-76df-40fe-ae41-98612e35a320","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"54629573-a897-4e06-9ad9-ca73d3bfe94c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615888.149068} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.478585,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c77c2abe-76df-40fe-ae41-98612e35a320","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bc7a19f0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/c77c2abe-76df-40fe-ae41-98612e35a320","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":"bc7a19f0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"bc7a19f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/c77c2abe-76df-40fe-ae41-98612e35a320 200 11ms","method":"GET","requestID":"bc7a19f0-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/peerconnections/c77c2abe-76df-40fe-ae41-98612e35a320"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 33ms","method":"POST","requestID":"51f4834587044dcbc21a20fdb9fc9cac","responseTime":33,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24: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.037","http_referrer":"","http_user_agent":"node-fetch","requestID":"51f4834587044dcbc21a20fdb9fc9cac"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bc7e5fb0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:48Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8922e99-cc9f-4537-849a-40e5490dd7e3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5059a827-9dc8-4b91-b151-c60d1e74adfe","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615888.1764798} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.456936,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bc7e5fb0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3","object_type":"device","rebac_allow":false,"scope_allow":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":"bc7e5fb0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bc7e5fb0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f8922e99-cc9f-4537-849a-40e5490dd7e3/signaling 200 9ms","method":"POST","requestID":"bc7e5fb0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bc803470-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:48Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd150441-7b17-42ee-9c19-cb74d2ba4f75","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4d15c0cd-d9a5-453d-99e4-cfd61b717a15","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615888.1876261} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.252434,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bc803470-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75","object_type":"device","rebac_allow":false,"scope_allow":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":"bc803470-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bc803470-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75/signaling 200 9ms","method":"POST","requestID":"bc803470-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4OH0.5XC2EJaYrwParlWftBs4gp9eqsyVg9rGm2s8o6GaHqY","level":"info","message":"auth send jwt","requestID":"dee6d8c9067f97ce889fab380f017f47"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"dee6d8c9067f97ce889fab380f017f47","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2","requestID":"dee6d8c9067f97ce889fab380f017f47"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:48Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.288103,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dee6d8c9067f97ce889fab380f017f47","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615888,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4OH0.5XC2EJaYrwParlWftBs4gp9eqsyVg9rGm2s8o6GaHqY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"dee6d8c9067f97ce889fab380f017f47","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2","requestID":"dee6d8c9067f97ce889fab380f017f47"} gateway-1 | {"time_local":"02/Aug/2024:16:24:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2 HTTP/1.1","status": "200","body_bytes_sent":"889","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dee6d8c9067f97ce889fab380f017f47"} experiment-1 | {"level":"info","message":"GET /experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2 200 18ms","method":"GET","requestID":"dee6d8c9067f97ce889fab380f017f47","responseTime":18,"status":200,"url":"/experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4OH0.5XC2EJaYrwParlWftBs4gp9eqsyVg9rGm2s8o6GaHqY","level":"info","message":"auth send jwt","requestID":"38aaa8ed3779ed692bb90b10cd3cf27e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"38aaa8ed3779ed692bb90b10cd3cf27e","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2","requestID":"38aaa8ed3779ed692bb90b10cd3cf27e"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:48Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.26076,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:48Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"38aaa8ed3779ed692bb90b10cd3cf27e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615888,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4OH0.5XC2EJaYrwParlWftBs4gp9eqsyVg9rGm2s8o6GaHqY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"38aaa8ed3779ed692bb90b10cd3cf27e","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2"},"level":"info","message":"Attempting to finish experiment","requestID":"38aaa8ed3779ed692bb90b10cd3cf27e"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"bc8e1720-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:48Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.202722,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:48Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c77c2abe-76df-40fe-ae41-98612e35a320","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bc8e1720-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/c77c2abe-76df-40fe-ae41-98612e35a320","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615888,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4OH0.5XC2EJaYrwParlWftBs4gp9eqsyVg9rGm2s8o6GaHqY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bc8e1720-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"f8922e99-cc9f-4537-849a-40e5490dd7e3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f8922e99-cc9f-4537-849a-40e5490dd7e3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f8922e99-cc9f-4537-849a-40e5490dd7e3","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"cd150441-7b17-42ee-9c19-cb74d2ba4f75","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"cd150441-7b17-42ee-9c19-cb74d2ba4f75","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"cd150441-7b17-42ee-9c19-cb74d2ba4f75","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c77c2abe-76df-40fe-ae41-98612e35a320' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/c77c2abe-76df-40fe-ae41-98612e35a320' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c77c2abe-76df-40fe-ae41-98612e35a320","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc77c2abe-76df-40fe-ae41-98612e35a320': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc77c2abe-76df-40fe-ae41-98612e35a320","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"5c977f2d-5029-4d8a-8fe4-1fe4d55eaacd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615888.3052337} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f3dab375-6f3e-4db4-aaee-985d98f61958","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615888.3057203} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c2d397da43203a4d3bb33dd12fb39beb","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":"c2d397da43203a4d3bb33dd12fb39beb","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"bc8e1720-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2460aa1f59a3f1043029529a314a87d1","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":"2460aa1f59a3f1043029529a314a87d1","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c77c2abe-76df-40fe-ae41-98612e35a320"}}},"level":"info","message":"received a callback","requestID":"c2d397da43203a4d3bb33dd12fb39beb"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c77c2abe-76df-40fe-ae41-98612e35a320"}}},"level":"info","message":"received a callback","requestID":"2460aa1f59a3f1043029529a314a87d1"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"bc8e1720-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/c77c2abe-76df-40fe-ae41-98612e35a320 204 58ms","method":"DELETE","requestID":"bc8e1720-50eb-11ef-8434-2f6d198c7397","responseTime":58,"status":204,"url":"/peerconnections/c77c2abe-76df-40fe-ae41-98612e35a320"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2"},"level":"info","message":"Successfully finished experiment","requestID":"38aaa8ed3779ed692bb90b10cd3cf27e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bc9b5d90-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:48Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff8922e99-cc9f-4537-849a-40e5490dd7e3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e45063e-d2f7-475a-af94-1fcff26305aa","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615888.3744273} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.484395,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bc9b5d90-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3","object_type":"device","rebac_allow":false,"scope_allow":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":"bc9b5d90-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe11951c5-1f55-4f00-a6b4-917fd9c58dc2': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe11951c5-1f55-4f00-a6b4-917fd9c58dc2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"d3aa1b3c-d356-4eaa-8d3c-47285ce06ded","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615888.3825505} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bc9b5d90-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f8922e99-cc9f-4537-849a-40e5490dd7e3/signaling 200 23ms","method":"POST","requestID":"bc9b5d90-50eb-11ef-8434-2f6d198c7397","responseTime":23,"status":200,"url":"/devices/f8922e99-cc9f-4537-849a-40e5490dd7e3/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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6daf9122-c4cd-48cc-af73-e02c5a0ff66a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615888.3833904} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"38aaa8ed3779ed692bb90b10cd3cf27e","responseTime":28,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bc9f7c40-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:48Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd150441-7b17-42ee-9c19-cb74d2ba4f75","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9ce267bb-b39b-4e15-8b6e-5a8cbcc6018a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615888.3960407} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.828751,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bc9f7c40-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75","object_type":"device","rebac_allow":false,"scope_allow":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":"bc9f7c40-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bc9f7c40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75/signaling 200 16ms","method":"POST","requestID":"bc9f7c40-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2","requestID":"38aaa8ed3779ed692bb90b10cd3cf27e"} gateway-1 | {"time_local":"02/Aug/2024:16:24:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.212","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"38aaa8ed3779ed692bb90b10cd3cf27e"} gateway-1 | {"time_local":"02/Aug/2024:16:24:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2891","request_time":"2.738","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"6a60a4a6a4851eddbbe2b235e4e42023"} experiment-1 | {"level":"info","message":"DELETE /experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2 204 208ms","method":"DELETE","requestID":"38aaa8ed3779ed692bb90b10cd3cf27e","responseTime":208,"status":204,"url":"/experiments/e11951c5-1f55-4f00-a6b4-917fd9c58dc2"} gateway-1 | {"time_local":"02/Aug/2024:16:24:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2891","request_time":"2.748","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"fd2a7f912fd0115f24d7bad20dae84f8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 155ms","method":"POST","requestID":"c2d397da43203a4d3bb33dd12fb39beb","responseTime":155,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24: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.161","http_referrer":"","http_user_agent":"node-fetch","requestID":"c2d397da43203a4d3bb33dd12fb39beb"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 154ms","method":"POST","requestID":"2460aa1f59a3f1043029529a314a87d1","responseTime":154,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24: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.162","http_referrer":"","http_user_agent":"node-fetch","requestID":"2460aa1f59a3f1043029529a314a87d1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4OH0.5XC2EJaYrwParlWftBs4gp9eqsyVg9rGm2s8o6GaHqY","level":"info","message":"auth send jwt","requestID":"b59953a6fed9a21ba67f873fbc3779ee"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b59953a6fed9a21ba67f873fbc3779ee","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b59953a6fed9a21ba67f873fbc3779ee"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/cd150441-7b17-42ee-9c19-cb74d2ba4f75' closed"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:48Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.06442,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b59953a6fed9a21ba67f873fbc3779ee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615888,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4OH0.5XC2EJaYrwParlWftBs4gp9eqsyVg9rGm2s8o6GaHqY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b59953a6fed9a21ba67f873fbc3779ee","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/f8922e99-cc9f-4537-849a-40e5490dd7e3' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0c55cc-c879-429e-b1a5-2017550cf17b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7bd7b7ae-8d0c-4031-bc67-48b65c1a166b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615888.506913} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b59953a6fed9a21ba67f873fbc3779ee","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a02862ac-df41-4c4b-9e40-322cfafed5b6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615888.5150797} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b59953a6fed9a21ba67f873fbc3779ee","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0c55cc-c879-429e-b1a5-2017550cf17b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"69b84596-c7ca-4796-94eb-788c0daf4f39","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615888.5261953} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"338a8b50-b60a-4dd5-9a11-115be2b1ffbd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615888.5265255} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"b59953a6fed9a21ba67f873fbc3779ee","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0c55cc-c879-429e-b1a5-2017550cf17b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0c55cc-c879-429e-b1a5-2017550cf17b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:48.526175806Z"}]},"request_id":"085fd499-1a24-49ce-9f4e-de23436eabb6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615888.532478} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b59953a6fed9a21ba67f873fbc3779ee","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b59953a6fed9a21ba67f873fbc3779ee"} gateway-1 | {"time_local":"02/Aug/2024:16:24:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.070","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b59953a6fed9a21ba67f873fbc3779ee"} device-1 | {"level":"info","message":"POST /devices? 201 57ms","method":"POST","requestID":"b59953a6fed9a21ba67f873fbc3779ee","responseTime":57,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4OH0.5XC2EJaYrwParlWftBs4gp9eqsyVg9rGm2s8o6GaHqY","level":"info","message":"auth send jwt","requestID":"d264f362e84603f66b24b192e92d9746"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d264f362e84603f66b24b192e92d9746","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d264f362e84603f66b24b192e92d9746"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:48Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.104851,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d264f362e84603f66b24b192e92d9746","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615888,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg4OH0.5XC2EJaYrwParlWftBs4gp9eqsyVg9rGm2s8o6GaHqY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d264f362e84603f66b24b192e92d9746","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd3a6136-4b01-4abd-acef-6b073d13bbca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0cac99db-3573-4558-8813-31cad2b2ef72","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615888.5685682} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d264f362e84603f66b24b192e92d9746","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"57084dde-a670-434f-89e3-42802fed6cc4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615888.5751379} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"d264f362e84603f66b24b192e92d9746","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd3a6136-4b01-4abd-acef-6b073d13bbca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"2062a693-d298-4303-8d10-af9cc28e3925","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615888.5870094} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"140c7ef3-3f03-4191-b287-e712813452eb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615888.5871875} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"d264f362e84603f66b24b192e92d9746","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd3a6136-4b01-4abd-acef-6b073d13bbca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd3a6136-4b01-4abd-acef-6b073d13bbca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:48.586996556Z"}]},"request_id":"20a2dd4c-f786-4c47-9090-ba50a33bddb0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615888.5919378} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d264f362e84603f66b24b192e92d9746","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d264f362e84603f66b24b192e92d9746"} gateway-1 | {"time_local":"02/Aug/2024:16:24:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d264f362e84603f66b24b192e92d9746"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"d264f362e84603f66b24b192e92d9746","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"91a239cffcb46265e108d1cc7622bd6b","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":"91a239cffcb46265e108d1cc7622bd6b","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:24:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2d0c55cc-c879-429e-b1a5-2017550cf17b/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":"91a239cffcb46265e108d1cc7622bd6b"} device-1 | {"level":"info","message":"OPTIONS /devices/2d0c55cc-c879-429e-b1a5-2017550cf17b/websocket 200 1ms","method":"OPTIONS","requestID":"91a239cffcb46265e108d1cc7622bd6b","responseTime":1,"status":200,"url":"/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc","level":"info","message":"auth send jwt","requestID":"51c3ca9a3a02a399cafc03075ecd187b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"51c3ca9a3a02a399cafc03075ecd187b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"51c3ca9a3a02a399cafc03075ecd187b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.417106,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:50Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4969ac6e456d74890954165c76b065d2","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 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"51c3ca9a3a02a399cafc03075ecd187b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615890,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"51c3ca9a3a02a399cafc03075ecd187b","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4969ac6e456d74890954165c76b065d2","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:24:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/fd3a6136-4b01-4abd-acef-6b073d13bbca/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":"4969ac6e456d74890954165c76b065d2"} device-1 | {"level":"info","message":"OPTIONS /devices/fd3a6136-4b01-4abd-acef-6b073d13bbca/websocket 200 1ms","method":"OPTIONS","requestID":"4969ac6e456d74890954165c76b065d2","responseTime":1,"status":200,"url":"/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc","level":"info","message":"auth send jwt","requestID":"6be8fffe98b5c899e3e732658c137bc9"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"6be8fffe98b5c899e3e732658c137bc9","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6be8fffe98b5c899e3e732658c137bc9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"51c3ca9a3a02a399cafc03075ecd187b"} gateway-1 | {"time_local":"02/Aug/2024:16:24:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2d0c55cc-c879-429e-b1a5-2017550cf17b/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":"51c3ca9a3a02a399cafc03075ecd187b"} device-1 | {"level":"info","message":"POST /devices/2d0c55cc-c879-429e-b1a5-2017550cf17b/websocket 200 25ms","method":"POST","requestID":"51c3ca9a3a02a399cafc03075ecd187b","responseTime":25,"status":200,"url":"/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b/websocket"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.40377,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"6be8fffe98b5c899e3e732658c137bc9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615890,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6be8fffe98b5c899e3e732658c137bc9","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6be8fffe98b5c899e3e732658c137bc9"} device-1 | {"level":"info","message":"POST /devices/fd3a6136-4b01-4abd-acef-6b073d13bbca/websocket 200 24ms","method":"POST","requestID":"6be8fffe98b5c899e3e732658c137bc9","responseTime":24,"status":200,"url":"/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:24:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/fd3a6136-4b01-4abd-acef-6b073d13bbca/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.032","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":"6be8fffe98b5c899e3e732658c137bc9"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e1e9325551a1ec2da356fe83807d7e8d","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":"e1e9325551a1ec2da356fe83807d7e8d","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:24:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2d0c55cc-c879-429e-b1a5-2017550cf17b? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"e1e9325551a1ec2da356fe83807d7e8d"} device-1 | {"level":"info","message":"OPTIONS /devices/2d0c55cc-c879-429e-b1a5-2017550cf17b? 200 1ms","method":"OPTIONS","requestID":"e1e9325551a1ec2da356fe83807d7e8d","responseTime":1,"status":200,"url":"/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d9eff35d3d724196f1423196e6ba882d","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":"d9eff35d3d724196f1423196e6ba882d","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:24:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/fd3a6136-4b01-4abd-acef-6b073d13bbca? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"d9eff35d3d724196f1423196e6ba882d"} device-1 | {"level":"info","message":"OPTIONS /devices/fd3a6136-4b01-4abd-acef-6b073d13bbca? 200 1ms","method":"OPTIONS","requestID":"d9eff35d3d724196f1423196e6ba882d","responseTime":1,"status":200,"url":"/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc","level":"info","message":"auth send jwt","requestID":"b224edfc0477000449cba6971489484f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b224edfc0477000449cba6971489484f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b224edfc0477000449cba6971489484f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc","level":"info","message":"auth send jwt","requestID":"b88e565df2682fb9c46b1b9d5a317171"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:50Z"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b88e565df2682fb9c46b1b9d5a317171","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.03503,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b224edfc0477000449cba6971489484f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615890,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b88e565df2682fb9c46b1b9d5a317171"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b224edfc0477000449cba6971489484f","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.888466,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b88e565df2682fb9c46b1b9d5a317171","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615890,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b88e565df2682fb9c46b1b9d5a317171","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0c55cc-c879-429e-b1a5-2017550cf17b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0c55cc-c879-429e-b1a5-2017550cf17b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:48.526175806Z"}]},"request_id":"abbcd1e4-de16-436a-acde-6660b7670194","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615890.674225} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b224edfc0477000449cba6971489484f","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd3a6136-4b01-4abd-acef-6b073d13bbca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd3a6136-4b01-4abd-acef-6b073d13bbca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:48.586996556Z"}]},"request_id":"c36cd94c-6d8a-4020-813b-6d4d90d5bc66","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615890.6780353} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b88e565df2682fb9c46b1b9d5a317171","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7641e317-6209-441f-b7f3-dc4d430ff72e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615890.6815386} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b224edfc0477000449cba6971489484f","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fbbf03d1-a655-4c26-83f2-d0f73beea885","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615890.6872888} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b88e565df2682fb9c46b1b9d5a317171","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0c55cc-c879-429e-b1a5-2017550cf17b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0c55cc-c879-429e-b1a5-2017550cf17b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:48.526175806Z"}]},"request_id":"682c5c8f-6e98-4d0b-ae67-1229f33714aa","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615890.6976128} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b224edfc0477000449cba6971489484f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b224edfc0477000449cba6971489484f"} gateway-1 | {"time_local":"02/Aug/2024:16:24:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2d0c55cc-c879-429e-b1a5-2017550cf17b? HTTP/1.1","status": "200","body_bytes_sent":"1007","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":"b224edfc0477000449cba6971489484f"} device-1 | {"level":"info","message":"PATCH /devices/2d0c55cc-c879-429e-b1a5-2017550cf17b? 200 41ms","method":"PATCH","requestID":"b224edfc0477000449cba6971489484f","responseTime":41,"status":200,"url":"/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd3a6136-4b01-4abd-acef-6b073d13bbca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd3a6136-4b01-4abd-acef-6b073d13bbca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:48.586996556Z"}]},"request_id":"4a20093f-5656-4454-b02f-5add40bff623","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615890.7106655} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"b88e565df2682fb9c46b1b9d5a317171","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b88e565df2682fb9c46b1b9d5a317171"} gateway-1 | {"time_local":"02/Aug/2024:16:24:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/fd3a6136-4b01-4abd-acef-6b073d13bbca? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.053","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":"b88e565df2682fb9c46b1b9d5a317171"} device-1 | {"level":"info","message":"PATCH /devices/fd3a6136-4b01-4abd-acef-6b073d13bbca? 200 49ms","method":"PATCH","requestID":"b88e565df2682fb9c46b1b9d5a317171","responseTime":49,"status":200,"url":"/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc","level":"info","message":"auth send jwt","requestID":"bcddd1d9fce8586822db247a91f6c845"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"bcddd1d9fce8586822db247a91f6c845","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bcddd1d9fce8586822db247a91f6c845"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.263218,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bcddd1d9fce8586822db247a91f6c845","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615890,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bcddd1d9fce8586822db247a91f6c845","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0c55cc-c879-429e-b1a5-2017550cf17b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0c55cc-c879-429e-b1a5-2017550cf17b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:48.526175806Z"}]},"request_id":"dfe33b7b-1b6a-429e-9eb1-c6fc9a33e43b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615890.7432346} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bcddd1d9fce8586822db247a91f6c845","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bcddd1d9fce8586822db247a91f6c845"} device-1 | {"level":"info","message":"GET /devices/2d0c55cc-c879-429e-b1a5-2017550cf17b? 200 19ms","method":"GET","requestID":"bcddd1d9fce8586822db247a91f6c845","responseTime":19,"status":200,"url":"/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b?"} gateway-1 | {"time_local":"02/Aug/2024:16:24:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2d0c55cc-c879-429e-b1a5-2017550cf17b? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bcddd1d9fce8586822db247a91f6c845"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc","level":"info","message":"auth send jwt","requestID":"48203fea32f0b0123743589c33d4bc4f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"48203fea32f0b0123743589c33d4bc4f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"48203fea32f0b0123743589c33d4bc4f"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.192609,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"48203fea32f0b0123743589c33d4bc4f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615890,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"48203fea32f0b0123743589c33d4bc4f","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd3a6136-4b01-4abd-acef-6b073d13bbca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd3a6136-4b01-4abd-acef-6b073d13bbca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:48.586996556Z"}]},"request_id":"39f1d1a7-bd87-41f5-ab9c-b2d78953d063","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615890.7691667} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"48203fea32f0b0123743589c33d4bc4f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"48203fea32f0b0123743589c33d4bc4f"} gateway-1 | {"time_local":"02/Aug/2024:16:24:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/fd3a6136-4b01-4abd-acef-6b073d13bbca? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"48203fea32f0b0123743589c33d4bc4f"} device-1 | {"level":"info","message":"GET /devices/fd3a6136-4b01-4abd-acef-6b073d13bbca? 200 19ms","method":"GET","requestID":"48203fea32f0b0123743589c33d4bc4f","responseTime":19,"status":200,"url":"/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc","level":"info","message":"auth send jwt","requestID":"c891ee6b4b08594bfd684370634ac6d6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c891ee6b4b08594bfd684370634ac6d6","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"c891ee6b4b08594bfd684370634ac6d6"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.202184,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c891ee6b4b08594bfd684370634ac6d6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615890,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c891ee6b4b08594bfd684370634ac6d6","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488"},"level":"info","message":"Attempting to run experiment","requestID":"c891ee6b4b08594bfd684370634ac6d6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488"},"level":"info","message":"Attempting to book experiment","requestID":"c891ee6b4b08594bfd684370634ac6d6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488"},"level":"info","message":"Successfully booked experiment","requestID":"c891ee6b4b08594bfd684370634ac6d6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"be1441f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"be14b720-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.270896,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"be1441f0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615890,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"be1441f0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.020238,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"be14b720-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615890,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"be14b720-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0c55cc-c879-429e-b1a5-2017550cf17b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0c55cc-c879-429e-b1a5-2017550cf17b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:48.526175806Z"}]},"request_id":"5723671d-2932-4305-b395-8b3458171166","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615890.8449767} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"be1441f0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd3a6136-4b01-4abd-acef-6b073d13bbca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd3a6136-4b01-4abd-acef-6b073d13bbca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:48.586996556Z"}]},"request_id":"c0923e62-7eb8-40da-a544-5b30394aed27","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615890.8513823} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"be1441f0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"be14b720-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/2d0c55cc-c879-429e-b1a5-2017550cf17b? 200 22ms","method":"GET","requestID":"be1441f0-50eb-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"be14b720-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/fd3a6136-4b01-4abd-acef-6b073d13bbca? 200 23ms","method":"GET","requestID":"be14b720-50eb-11ef-8434-2f6d198c7397","responseTime":23,"status":200,"url":"/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488"},"level":"info","message":"Setting up experiment","requestID":"c891ee6b4b08594bfd684370634ac6d6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"c891ee6b4b08594bfd684370634ac6d6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488"},"level":"info","message":"Successfully locked booking for experiment","requestID":"c891ee6b4b08594bfd684370634ac6d6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"c891ee6b4b08594bfd684370634ac6d6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"c891ee6b4b08594bfd684370634ac6d6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488"},"level":"info","message":"Attempting to update booking for experiment","requestID":"c891ee6b4b08594bfd684370634ac6d6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488"},"level":"info","message":"Successfully updated booking for experiment","requestID":"c891ee6b4b08594bfd684370634ac6d6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488"},"level":"info","message":"Successfully set up experiment","requestID":"c891ee6b4b08594bfd684370634ac6d6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"be1fdab0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"be2001c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"be204fe0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.925144,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:50Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488"},"level":"info","message":"Successfully running experiment","requestID":"c891ee6b4b08594bfd684370634ac6d6"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"be1fdab0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615890,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"be1fdab0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.764045,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"be2001c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615890,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"be2001c0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.815281,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0c55cc-c879-429e-b1a5-2017550cf17b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b09471ab-e259-4b47-a9bf-df9078507ad6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615890.9170601} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd3a6136-4b01-4abd-acef-6b073d13bbca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd3a6136-4b01-4abd-acef-6b073d13bbca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:48.586996556Z"}]},"request_id":"43b2f653-52d8-43db-9e9f-d56298c82109","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615890.9246328} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"be204fe0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b","object_type":"device","rebac_allow":false,"scope_allow":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":"be204fe0-50eb-11ef-8434-2f6d198c7397","responseTime":15,"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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0c55cc-c879-429e-b1a5-2017550cf17b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0c55cc-c879-429e-b1a5-2017550cf17b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:48.526175806Z"}]},"request_id":"9ad650fc-4877-4318-8775-96923ba10b8b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615890.9279675} authorization-1 | {"level":"info","message":"POST /relations/query 200 14ms","method":"POST","requestID":"be2001c0-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 12ms","method":"POST","requestID":"be1fdab0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F364c96c8-ed0e-47c3-8d30-33915e9c6488#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F364c96c8-ed0e-47c3-8d30-33915e9c6488","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"f556f4ea-7e22-468a-a14d-ed3bb222984e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615890.9349124} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"be204fe0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/2d0c55cc-c879-429e-b1a5-2017550cf17b/signaling 200 29ms","method":"POST","requestID":"be204fe0-50eb-11ef-8434-2f6d198c7397","responseTime":29,"status":200,"url":"/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"be2531e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"be2001c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/fd3a6136-4b01-4abd-acef-6b073d13bbca? 200 37ms","method":"GET","requestID":"be2001c0-50eb-11ef-8434-2f6d198c7397","responseTime":37,"status":200,"url":"/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"be1fdab0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/2d0c55cc-c879-429e-b1a5-2017550cf17b? 200 40ms","method":"GET","requestID":"be1fdab0-50eb-11ef-8434-2f6d198c7397","responseTime":40,"status":200,"url":"/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f1308d22-9841-4e32-bd0d-463e7755ffec","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615890.9418585} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"be264350-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 35ms","method":"POST","requestID":"c891ee6b4b08594bfd684370634ac6d6","responseTime":35,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd3a6136-4b01-4abd-acef-6b073d13bbca","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"14c327c1-2f4d-4f7c-8bed-f31aaf1d548b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615890.9548185} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.670881,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"be2531e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca","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 | {"data":{"experiment":"http://localhost/experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"c891ee6b4b08594bfd684370634ac6d6"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"be2531e0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0c55cc-c879-429e-b1a5-2017550cf17b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b3b67f3c-4682-42a1-b38b-5554d8c9458e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615890.9567754} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.889733,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"be264350-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b","object_type":"device","rebac_allow":false,"scope_allow":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":"be264350-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:24:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"808","request_time":"0.181","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c891ee6b4b08594bfd684370634ac6d6"} experiment-1 | {"level":"info","message":"POST /experiments? 201 175ms","method":"POST","requestID":"c891ee6b4b08594bfd684370634ac6d6","responseTime":175,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"be2531e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/fd3a6136-4b01-4abd-acef-6b073d13bbca/signaling 200 20ms","method":"POST","requestID":"be2531e0-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"be264350-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc","level":"info","message":"auth send jwt","requestID":"ca491f317019b69d9bd690537d93c83c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ca491f317019b69d9bd690537d93c83c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/2d0c55cc-c879-429e-b1a5-2017550cf17b/signaling 200 15ms","method":"POST","requestID":"be264350-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ca491f317019b69d9bd690537d93c83c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"be292980-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.930739,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ca491f317019b69d9bd690537d93c83c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615890,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ca491f317019b69d9bd690537d93c83c","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd3a6136-4b01-4abd-acef-6b073d13bbca","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e711cc08-888f-4a28-89ba-aff1e87ff149","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615890.9722717} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.317914,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"be292980-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca","object_type":"device","rebac_allow":false,"scope_allow":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":"be292980-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0c55cc-c879-429e-b1a5-2017550cf17b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0c55cc-c879-429e-b1a5-2017550cf17b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:48.526175806Z"}]},"request_id":"4e7ece4c-c183-437d-9fb7-b1c9ea733199","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615890.975947} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"be292980-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/fd3a6136-4b01-4abd-acef-6b073d13bbca/signaling 200 8ms","method":"POST","requestID":"be292980-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ca491f317019b69d9bd690537d93c83c","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"c891ee6b4b08594bfd684370634ac6d6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"be2ab020-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"be2afe40-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:50Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ca491f317019b69d9bd690537d93c83c"} gateway-1 | {"time_local":"02/Aug/2024:16:24:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2d0c55cc-c879-429e-b1a5-2017550cf17b? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ca491f317019b69d9bd690537d93c83c"} device-1 | {"level":"info","message":"GET /devices/2d0c55cc-c879-429e-b1a5-2017550cf17b? 200 16ms","method":"GET","requestID":"ca491f317019b69d9bd690537d93c83c","responseTime":16,"status":200,"url":"/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.645656,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"be2ab020-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615890,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"be2ab020-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.847079,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"be2afe40-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615890,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"be2afe40-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc","level":"info","message":"auth send jwt","requestID":"872960da532e5e81347bc8c7adf8778b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"872960da532e5e81347bc8c7adf8778b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"872960da532e5e81347bc8c7adf8778b"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0c55cc-c879-429e-b1a5-2017550cf17b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0c55cc-c879-429e-b1a5-2017550cf17b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:48.526175806Z"}]},"request_id":"6b8242c7-5b14-4980-a7d5-93b2c1fea330","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615890.9868343} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"be2ab020-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd3a6136-4b01-4abd-acef-6b073d13bbca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd3a6136-4b01-4abd-acef-6b073d13bbca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:48.586996556Z"}]},"request_id":"3de78310-664c-4137-93e3-c35cf2d198e6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615890.9886565} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"be2afe40-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.652732,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"872960da532e5e81347bc8c7adf8778b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615890,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"be2ab020-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"872960da532e5e81347bc8c7adf8778b","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/2d0c55cc-c879-429e-b1a5-2017550cf17b? 200 15ms","method":"GET","requestID":"be2ab020-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"be2afe40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/fd3a6136-4b01-4abd-acef-6b073d13bbca? 200 13ms","method":"GET","requestID":"be2afe40-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488"},"level":"info","message":"Building connection plan","requestID":"c891ee6b4b08594bfd684370634ac6d6"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"564f40b3-bfb5-42ed-bc0a-77429c925893"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"cc1daf23-b9c4-4ba4-8673-a04083936709"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"5baa0a5f-ac48-49ed-955a-b1a32a4f2d9c"}]},"level":"info","message":"Built pairwise service configurations","requestID":"c891ee6b4b08594bfd684370634ac6d6"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd3a6136-4b01-4abd-acef-6b073d13bbca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd3a6136-4b01-4abd-acef-6b073d13bbca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:48.586996556Z"}]},"request_id":"2b598d70-3df9-4ff1-9149-66c5ca4d908a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615890.996696} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"872960da532e5e81347bc8c7adf8778b","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"872960da532e5e81347bc8c7adf8778b"} gateway-1 | {"time_local":"02/Aug/2024:16:24:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/fd3a6136-4b01-4abd-acef-6b073d13bbca? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"872960da532e5e81347bc8c7adf8778b"} device-1 | {"level":"info","message":"GET /devices/fd3a6136-4b01-4abd-acef-6b073d13bbca? 200 13ms","method":"GET","requestID":"872960da532e5e81347bc8c7adf8778b","responseTime":13,"status":200,"url":"/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca?"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"be2f4400-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"be2f4400-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"POST /rooms 201 9ms","method":"POST","requestID":"be2f4400-50eb-11ef-a432-47ab85bb6d58","responseTime":9,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/371de46b-4a31-4dd1-b1ad-4b699aed5b0a?id=5a98a604-f0af-4ab0-a7cf-1a446963728c","ws://localhost/rooms/371de46b-4a31-4dd1-b1ad-4b699aed5b0a?id=c0215915-fb5e-4f5a-bcd4-c8b7e7449d20"]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"c891ee6b4b08594bfd684370634ac6d6"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"be313fd0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.795354,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"be313fd0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615890,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MH0.Gzy0u7uK5_LG8EkfMzNkoIgcN9G7Vn1MgNIQU39VwWc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"be313fd0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"abd52de4-1453-4a4c-b14e-5df8e2679a18","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615891.0326846} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"83645560-47f7-49c7-99bc-062ee634bd7f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615891.032966} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"be313fd0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"be313fd0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"be313fd0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/7635af23-ee76-4d7e-8d43-123fc50771a0'","requestID":"be313fd0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/7635af23-ee76-4d7e-8d43-123fc50771a0'","requestID":"be313fd0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"be313fd0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"be313fd0-50eb-11ef-8434-2f6d198c7397","responseTime":25,"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":"be313fd0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/7635af23-ee76-4d7e-8d43-123fc50771a0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7635af23-ee76-4d7e-8d43-123fc50771a0","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c240edf9e380dcbfe02eefc5ac24db61","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":"c240edf9e380dcbfe02eefc5ac24db61","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/7635af23-ee76-4d7e-8d43-123fc50771a0"}}},"level":"info","message":"received a callback","requestID":"c240edf9e380dcbfe02eefc5ac24db61"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"be381da0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c0215915-fb5e-4f5a-bcd4-c8b7e7449d20\" in room \"http://localhost/rooms/371de46b-4a31-4dd1-b1ad-4b699aed5b0a\"","requestID":"be381da0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"be381da0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"be3892d0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5a98a604-f0af-4ab0-a7cf-1a446963728c\" in room \"http://localhost/rooms/371de46b-4a31-4dd1-b1ad-4b699aed5b0a\"","requestID":"be3892d0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"be3892d0-50eb-11ef-a432-47ab85bb6d58"} device-1 | {"data":{"peerconnection":"7635af23-ee76-4d7e-8d43-123fc50771a0","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 14ms","method":"POST","requestID":"c240edf9e380dcbfe02eefc5ac24db61","responseTime":14,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24:51 +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":"c240edf9e380dcbfe02eefc5ac24db61"} device-1 | {"data":{"peerconnection":"7635af23-ee76-4d7e-8d43-123fc50771a0","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"c891ee6b4b08594bfd684370634ac6d6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"be3c6360-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/7635af23-ee76-4d7e-8d43-123fc50771a0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7635af23-ee76-4d7e-8d43-123fc50771a0","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:51Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9f3478386d5633a18465ff7072b38884","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":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0c55cc-c879-429e-b1a5-2017550cf17b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ebf2638b-73a0-419b-886a-441aec52b153","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615891.0994487} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9f3478386d5633a18465ff7072b38884","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.609226,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"be3c6360-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b","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 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/7635af23-ee76-4d7e-8d43-123fc50771a0"}}},"level":"info","message":"received a callback","requestID":"9f3478386d5633a18465ff7072b38884"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"be3c6360-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"be3e5f30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"be3c6360-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/2d0c55cc-c879-429e-b1a5-2017550cf17b/signaling 200 16ms","method":"POST","requestID":"be3c6360-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7635af23-ee76-4d7e-8d43-123fc50771a0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b02b6a2e-8111-4476-b0c2-6acf0b09c621","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615891.1124265} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.752925,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:51Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"be3f4990-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7635af23-ee76-4d7e-8d43-123fc50771a0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"be3e5f30-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/7635af23-ee76-4d7e-8d43-123fc50771a0","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":"be3e5f30-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"be3e5f30-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:51Z"} device-1 | {"level":"info","message":"GET /peerconnections/7635af23-ee76-4d7e-8d43-123fc50771a0 200 9ms","method":"GET","requestID":"be3e5f30-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/peerconnections/7635af23-ee76-4d7e-8d43-123fc50771a0"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd3a6136-4b01-4abd-acef-6b073d13bbca","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b9a01202-70f6-4af6-a357-a23b2c89e7cb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615891.1173928} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.305702,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"be3f4990-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca","object_type":"device","rebac_allow":false,"scope_allow":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":"be3f4990-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"be3f4990-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/fd3a6136-4b01-4abd-acef-6b073d13bbca/signaling 200 8ms","method":"POST","requestID":"be3f4990-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 29ms","method":"POST","requestID":"9f3478386d5633a18465ff7072b38884","responseTime":29,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24:51 +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":"9f3478386d5633a18465ff7072b38884"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"be4208b0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0c55cc-c879-429e-b1a5-2017550cf17b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"90f5f52e-fce3-49eb-a9b9-770fbe030f05","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615891.136786} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.776396,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"be4208b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b","object_type":"device","rebac_allow":false,"scope_allow":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":"be4208b0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"be4208b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/2d0c55cc-c879-429e-b1a5-2017550cf17b/signaling 200 10ms","method":"POST","requestID":"be4208b0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"be43dd70-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd3a6136-4b01-4abd-acef-6b073d13bbca","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bc790c7a-dbd0-439d-beb9-21a46cef710a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615891.1483963} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.360666,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"be43dd70-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca","object_type":"device","rebac_allow":false,"scope_allow":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":"be43dd70-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"be43dd70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/fd3a6136-4b01-4abd-acef-6b073d13bbca/signaling 200 9ms","method":"POST","requestID":"be43dd70-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MX0.AADNZUt99nUvbsgIg1TygG5IEkoIf_JHCXQm0ecjA6g","level":"info","message":"auth send jwt","requestID":"018f41cf7895daee09f6a50a18066508"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"018f41cf7895daee09f6a50a18066508","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488","requestID":"018f41cf7895daee09f6a50a18066508"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.25484,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"018f41cf7895daee09f6a50a18066508","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615891,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MX0.AADNZUt99nUvbsgIg1TygG5IEkoIf_JHCXQm0ecjA6g"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"018f41cf7895daee09f6a50a18066508","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488","requestID":"018f41cf7895daee09f6a50a18066508"} experiment-1 | {"level":"info","message":"GET /experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488 200 17ms","method":"GET","requestID":"018f41cf7895daee09f6a50a18066508","responseTime":17,"status":200,"url":"/experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488"} gateway-1 | {"time_local":"02/Aug/2024:16:24:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488 HTTP/1.1","status": "200","body_bytes_sent":"881","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"018f41cf7895daee09f6a50a18066508"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MX0.AADNZUt99nUvbsgIg1TygG5IEkoIf_JHCXQm0ecjA6g","level":"info","message":"auth send jwt","requestID":"70cf6a873267788bdb797c0c06df68a4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"70cf6a873267788bdb797c0c06df68a4","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488","requestID":"70cf6a873267788bdb797c0c06df68a4"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.303927,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"70cf6a873267788bdb797c0c06df68a4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615891,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MX0.AADNZUt99nUvbsgIg1TygG5IEkoIf_JHCXQm0ecjA6g"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"70cf6a873267788bdb797c0c06df68a4","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488"},"level":"info","message":"Attempting to finish experiment","requestID":"70cf6a873267788bdb797c0c06df68a4"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"be4fc450-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.744886,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7635af23-ee76-4d7e-8d43-123fc50771a0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"be4fc450-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/7635af23-ee76-4d7e-8d43-123fc50771a0","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615891,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MX0.AADNZUt99nUvbsgIg1TygG5IEkoIf_JHCXQm0ecjA6g"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"be4fc450-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/7635af23-ee76-4d7e-8d43-123fc50771a0","device":"2d0c55cc-c879-429e-b1a5-2017550cf17b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/7635af23-ee76-4d7e-8d43-123fc50771a0","device":"fd3a6136-4b01-4abd-acef-6b073d13bbca","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/7635af23-ee76-4d7e-8d43-123fc50771a0' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/7635af23-ee76-4d7e-8d43-123fc50771a0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7635af23-ee76-4d7e-8d43-123fc50771a0","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"02/Aug/2024:16:24:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/371de46b-4a31-4dd1-b1ad-4b699aed5b0a?id=5a98a604-f0af-4ab0-a7cf-1a446963728c HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.183","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":"275b6a90f5e768a01673b4605d43761e"} gateway-1 | {"time_local":"02/Aug/2024:16:24:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/371de46b-4a31-4dd1-b1ad-4b699aed5b0a?id=c0215915-fb5e-4f5a-bcd4-c8b7e7449d20 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.183","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":"02dde2cb17f3e48e301f8ba6aa040520"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"89e73fc7bece86d9c90914ee3269791d","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":"89e73fc7bece86d9c90914ee3269791d","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bf693220-f22a-48b7-a4fb-c3df04dbf388","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615891.244784} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"c0215915-fb5e-4f5a-bcd4-c8b7e7449d20\" in room \"http://localhost/rooms/371de46b-4a31-4dd1-b1ad-4b699aed5b0a\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"c0215915-fb5e-4f5a-bcd4-c8b7e7449d20\" from room \"http://localhost/rooms/371de46b-4a31-4dd1-b1ad-4b699aed5b0a\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4a64abc4820a9cfdb9c5e6c7a98f40e2","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":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7635af23-ee76-4d7e-8d43-123fc50771a0': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7635af23-ee76-4d7e-8d43-123fc50771a0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"b0464c00-72ff-4e4d-a10e-49c17a4ad5ae","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615891.2464318} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/7635af23-ee76-4d7e-8d43-123fc50771a0"}}},"level":"info","message":"received a callback","requestID":"89e73fc7bece86d9c90914ee3269791d"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"5a98a604-f0af-4ab0-a7cf-1a446963728c\" in room \"http://localhost/rooms/371de46b-4a31-4dd1-b1ad-4b699aed5b0a\""} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4a64abc4820a9cfdb9c5e6c7a98f40e2","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"5a98a604-f0af-4ab0-a7cf-1a446963728c\" from room \"http://localhost/rooms/371de46b-4a31-4dd1-b1ad-4b699aed5b0a\""} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"be4fc450-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/7635af23-ee76-4d7e-8d43-123fc50771a0"}}},"level":"info","message":"received a callback","requestID":"4a64abc4820a9cfdb9c5e6c7a98f40e2"} device-1 | {"data":{"peerconnection":"7635af23-ee76-4d7e-8d43-123fc50771a0","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"be4fc450-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/7635af23-ee76-4d7e-8d43-123fc50771a0 204 45ms","method":"DELETE","requestID":"be4fc450-50eb-11ef-8434-2f6d198c7397","responseTime":45,"status":204,"url":"/peerconnections/7635af23-ee76-4d7e-8d43-123fc50771a0"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488"},"level":"info","message":"Successfully finished experiment","requestID":"70cf6a873267788bdb797c0c06df68a4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"be5ac0d0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0c55cc-c879-429e-b1a5-2017550cf17b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2f2dd901-d11e-4b04-ada4-0eff55ef7fc0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615891.301615} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.472562,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"be5ac0d0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b","object_type":"device","rebac_allow":false,"scope_allow":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":"be5ac0d0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"be5ac0d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/2d0c55cc-c879-429e-b1a5-2017550cf17b/signaling 200 16ms","method":"POST","requestID":"be5ac0d0-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F364c96c8-ed0e-47c3-8d30-33915e9c6488': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F364c96c8-ed0e-47c3-8d30-33915e9c6488","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"859cabb6-b7df-4c2b-b722-25a647491363","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615891.311033} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f4485c40-6cf3-44a0-a2be-72cea8df797b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615891.3116531} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"be5dce10-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"70cf6a873267788bdb797c0c06df68a4","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd3a6136-4b01-4abd-acef-6b073d13bbca","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"040caea8-174a-4cd6-a56b-e0b889a442a5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615891.3196726} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.637129,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"be5dce10-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca","object_type":"device","rebac_allow":false,"scope_allow":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":"be5dce10-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"be5dce10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/fd3a6136-4b01-4abd-acef-6b073d13bbca/signaling 200 14ms","method":"POST","requestID":"be5dce10-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488","requestID":"70cf6a873267788bdb797c0c06df68a4"} gateway-1 | {"time_local":"02/Aug/2024:16:24:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.173","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"70cf6a873267788bdb797c0c06df68a4"} experiment-1 | {"level":"info","message":"DELETE /experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488 204 169ms","method":"DELETE","requestID":"70cf6a873267788bdb797c0c06df68a4","responseTime":169,"status":204,"url":"/experiments/364c96c8-ed0e-47c3-8d30-33915e9c6488"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MX0.AADNZUt99nUvbsgIg1TygG5IEkoIf_JHCXQm0ecjA6g","level":"info","message":"auth send jwt","requestID":"3c9a0910dba745a398319089c39b2f6a"} device-1 | {"level":"info","message":"postDevices called","requestID":"3c9a0910dba745a398319089c39b2f6a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3c9a0910dba745a398319089c39b2f6a","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"89e73fc7bece86d9c90914ee3269791d","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24:51 +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":"89e73fc7bece86d9c90914ee3269791d"} gateway-1 | {"time_local":"02/Aug/2024:16:24:51 +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":"4a64abc4820a9cfdb9c5e6c7a98f40e2"} gateway-1 | {"time_local":"02/Aug/2024:16:24:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1542","request_time":"0.756","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":"8f1a8e2636036b8b68ed1842f86626ef"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"4a64abc4820a9cfdb9c5e6c7a98f40e2","responseTime":129,"status":200,"url":"/callbacks/experiment"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.83804,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"3c9a0910dba745a398319089c39b2f6a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615891,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MX0.AADNZUt99nUvbsgIg1TygG5IEkoIf_JHCXQm0ecjA6g"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3c9a0910dba745a398319089c39b2f6a","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:24:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1543","request_time":"0.784","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":"3715d845f9482d296850b5457b7c602b"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28adf9cd-dc30-444b-b6f9-37ada6d019a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3ae7f681-96de-4927-9e2d-69910542012e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615891.395115} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3c9a0910dba745a398319089c39b2f6a","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8ad98781-788e-4b14-86d4-e33baefdca2d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615891.4002562} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"3c9a0910dba745a398319089c39b2f6a","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28adf9cd-dc30-444b-b6f9-37ada6d019a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"99b3c0aa-1cd7-449a-957e-0403fad99ce7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615891.4116929} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b7d164bb-0a39-4751-8cdc-1ac145a537e0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615891.4118676} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"3c9a0910dba745a398319089c39b2f6a","responseTime":14,"status":200,"url":"/relations/update"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/fd3a6136-4b01-4abd-acef-6b073d13bbca' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2d0c55cc-c879-429e-b1a5-2017550cf17b' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28adf9cd-dc30-444b-b6f9-37ada6d019a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28adf9cd-dc30-444b-b6f9-37ada6d019a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:51.411679975Z"}]},"request_id":"cf2fcd23-b35a-4a43-959a-7d5fbd01dd4f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615891.4200358} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3c9a0910dba745a398319089c39b2f6a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3c9a0910dba745a398319089c39b2f6a"} gateway-1 | {"time_local":"02/Aug/2024:16:24:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3c9a0910dba745a398319089c39b2f6a"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"3c9a0910dba745a398319089c39b2f6a","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MX0.AADNZUt99nUvbsgIg1TygG5IEkoIf_JHCXQm0ecjA6g","level":"info","message":"auth send jwt","requestID":"8883e21f28954dc57180f06b26a327f8"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8883e21f28954dc57180f06b26a327f8","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8883e21f28954dc57180f06b26a327f8"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.795438,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"8883e21f28954dc57180f06b26a327f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615891,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MX0.AADNZUt99nUvbsgIg1TygG5IEkoIf_JHCXQm0ecjA6g"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8883e21f28954dc57180f06b26a327f8","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ecf53d1-1e12-4d3d-8675-68a39c306f8b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7558a953-ef2e-40d7-b984-1d37d20ce38c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615891.4443405} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8883e21f28954dc57180f06b26a327f8","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a0f97ff1-b520-4093-8395-d4e3db579e94","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615891.4497101} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"8883e21f28954dc57180f06b26a327f8","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ecf53d1-1e12-4d3d-8675-68a39c306f8b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"b1d04532-164e-42da-82c1-8096c0bf50a1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615891.4635377} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dc2b9f0c-d5f3-4bba-9655-01789626c751","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615891.4636178} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"8883e21f28954dc57180f06b26a327f8","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ecf53d1-1e12-4d3d-8675-68a39c306f8b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ecf53d1-1e12-4d3d-8675-68a39c306f8b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:51.463521494Z"}]},"request_id":"cd93076e-b84d-4c92-b002-f02bded6ad2f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615891.467541} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"8883e21f28954dc57180f06b26a327f8","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8883e21f28954dc57180f06b26a327f8"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"8883e21f28954dc57180f06b26a327f8","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:24:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8883e21f28954dc57180f06b26a327f8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MX0.AADNZUt99nUvbsgIg1TygG5IEkoIf_JHCXQm0ecjA6g","level":"info","message":"auth send jwt","requestID":"1527ff1616cec2a1c62021170645c6f6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1527ff1616cec2a1c62021170645c6f6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"1527ff1616cec2a1c62021170645c6f6"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.153041,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:51Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1527ff1616cec2a1c62021170645c6f6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615891,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5MX0.AADNZUt99nUvbsgIg1TygG5IEkoIf_JHCXQm0ecjA6g"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1527ff1616cec2a1c62021170645c6f6","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ecf53d1-1e12-4d3d-8675-68a39c306f8b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ecf53d1-1e12-4d3d-8675-68a39c306f8b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:51.463521494Z"}]},"request_id":"cf56b5db-600f-4880-9efc-c956449debcd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615891.998472} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1527ff1616cec2a1c62021170645c6f6","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2c9d471e-1bb7-46ce-9e5b-20c2c6aa6f44","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615892.0060823} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"1527ff1616cec2a1c62021170645c6f6","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ecf53d1-1e12-4d3d-8675-68a39c306f8b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ecf53d1-1e12-4d3d-8675-68a39c306f8b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:51.463521494Z"}]},"request_id":"3d88653c-5b66-45ae-981f-cf275c267ebc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615892.0294135} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1527ff1616cec2a1c62021170645c6f6","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"1527ff1616cec2a1c62021170645c6f6"} device-1 | {"level":"info","message":"PATCH /devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b 200 51ms","method":"PATCH","requestID":"1527ff1616cec2a1c62021170645c6f6","responseTime":51,"status":200,"url":"/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b"} gateway-1 | {"time_local":"02/Aug/2024:16:24:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.058","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"1527ff1616cec2a1c62021170645c6f6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Mn0.lkj8fJdDjc47s66HXbqNhrBb8p_vKd0rkDINumcbW1I","level":"info","message":"auth send jwt","requestID":"a798ddae9ca52198fb15e40954a735e7"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a798ddae9ca52198fb15e40954a735e7","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a798ddae9ca52198fb15e40954a735e7"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.305284,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a798ddae9ca52198fb15e40954a735e7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615892,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Mn0.lkj8fJdDjc47s66HXbqNhrBb8p_vKd0rkDINumcbW1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a798ddae9ca52198fb15e40954a735e7","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a798ddae9ca52198fb15e40954a735e7"} device-1 | {"level":"info","message":"POST /devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b/websocket 200 21ms","method":"POST","requestID":"a798ddae9ca52198fb15e40954a735e7","responseTime":21,"status":200,"url":"/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:24:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"a798ddae9ca52198fb15e40954a735e7"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"db2361053fc2d09c73039c66bcda3912","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":"db2361053fc2d09c73039c66bcda3912","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:24:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0/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":"db2361053fc2d09c73039c66bcda3912"} device-1 | {"level":"info","message":"OPTIONS /devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0/websocket 200 1ms","method":"OPTIONS","requestID":"db2361053fc2d09c73039c66bcda3912","responseTime":1,"status":200,"url":"/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5M30.pAhh-517-bwbFbGpyzt-0I8uegr5IE0xFHexlwWM7b8","level":"info","message":"auth send jwt","requestID":"9758d7e93176578b0ec9b0d9e37224e7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9758d7e93176578b0ec9b0d9e37224e7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9758d7e93176578b0ec9b0d9e37224e7"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.270911,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"9758d7e93176578b0ec9b0d9e37224e7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615893,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5M30.pAhh-517-bwbFbGpyzt-0I8uegr5IE0xFHexlwWM7b8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9758d7e93176578b0ec9b0d9e37224e7","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9758d7e93176578b0ec9b0d9e37224e7"} gateway-1 | {"time_local":"02/Aug/2024:16:24:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0/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":"9758d7e93176578b0ec9b0d9e37224e7"} device-1 | {"level":"info","message":"POST /devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0/websocket 200 22ms","method":"POST","requestID":"9758d7e93176578b0ec9b0d9e37224e7","responseTime":22,"status":200,"url":"/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9ca96f310cbdd2fab8851517a1b1f3b3","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":"9ca96f310cbdd2fab8851517a1b1f3b3","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:24:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"9ca96f310cbdd2fab8851517a1b1f3b3"} device-1 | {"level":"info","message":"OPTIONS /devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0? 200 1ms","method":"OPTIONS","requestID":"9ca96f310cbdd2fab8851517a1b1f3b3","responseTime":1,"status":200,"url":"/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5M30.pAhh-517-bwbFbGpyzt-0I8uegr5IE0xFHexlwWM7b8","level":"info","message":"auth send jwt","requestID":"209445b192d5f1743d4c468186c00884"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"209445b192d5f1743d4c468186c00884","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"209445b192d5f1743d4c468186c00884"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.169928,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"209445b192d5f1743d4c468186c00884","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615893,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5M30.pAhh-517-bwbFbGpyzt-0I8uegr5IE0xFHexlwWM7b8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"209445b192d5f1743d4c468186c00884","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28adf9cd-dc30-444b-b6f9-37ada6d019a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28adf9cd-dc30-444b-b6f9-37ada6d019a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:51.411679975Z"}]},"request_id":"68371036-6c8e-4cc8-ad1b-0e2726c7cb26","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.5523396} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"209445b192d5f1743d4c468186c00884","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"77a39573-c595-4f39-b9a7-55563329c8b6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.5611107} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"209445b192d5f1743d4c468186c00884","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28adf9cd-dc30-444b-b6f9-37ada6d019a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28adf9cd-dc30-444b-b6f9-37ada6d019a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:51.411679975Z"}]},"request_id":"271e822f-2825-47a6-b431-37d187b24a4c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.568419} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"209445b192d5f1743d4c468186c00884","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"209445b192d5f1743d4c468186c00884"} device-1 | {"level":"info","message":"PATCH /devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0? 200 34ms","method":"PATCH","requestID":"209445b192d5f1743d4c468186c00884","responseTime":34,"status":200,"url":"/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0?"} gateway-1 | {"time_local":"02/Aug/2024:16:24:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.039","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":"209445b192d5f1743d4c468186c00884"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5M30.pAhh-517-bwbFbGpyzt-0I8uegr5IE0xFHexlwWM7b8","level":"info","message":"auth send jwt","requestID":"90cc14921d8b92b22a79983267d6a6f3"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"90cc14921d8b92b22a79983267d6a6f3","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"90cc14921d8b92b22a79983267d6a6f3"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.200321,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"90cc14921d8b92b22a79983267d6a6f3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615893,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5M30.pAhh-517-bwbFbGpyzt-0I8uegr5IE0xFHexlwWM7b8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"90cc14921d8b92b22a79983267d6a6f3","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28adf9cd-dc30-444b-b6f9-37ada6d019a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28adf9cd-dc30-444b-b6f9-37ada6d019a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:51.411679975Z"}]},"request_id":"16fb929e-120d-4105-860f-d951a33429ff","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.5998654} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"90cc14921d8b92b22a79983267d6a6f3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"90cc14921d8b92b22a79983267d6a6f3"} gateway-1 | {"time_local":"02/Aug/2024:16:24:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"90cc14921d8b92b22a79983267d6a6f3"} device-1 | {"level":"info","message":"GET /devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0? 200 19ms","method":"GET","requestID":"90cc14921d8b92b22a79983267d6a6f3","responseTime":19,"status":200,"url":"/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5M30.pAhh-517-bwbFbGpyzt-0I8uegr5IE0xFHexlwWM7b8","level":"info","message":"auth send jwt","requestID":"5d1b50a2675c2b1d29d90fe00fb83a94"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5d1b50a2675c2b1d29d90fe00fb83a94","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5d1b50a2675c2b1d29d90fe00fb83a94"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.23866,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"5d1b50a2675c2b1d29d90fe00fb83a94","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615893,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5M30.pAhh-517-bwbFbGpyzt-0I8uegr5IE0xFHexlwWM7b8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5d1b50a2675c2b1d29d90fe00fb83a94","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ecf53d1-1e12-4d3d-8675-68a39c306f8b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ecf53d1-1e12-4d3d-8675-68a39c306f8b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:51.463521494Z"}]},"request_id":"31fdfbce-2f39-4ccc-b38f-584932eaed0f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.6280868} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5d1b50a2675c2b1d29d90fe00fb83a94","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5d1b50a2675c2b1d29d90fe00fb83a94"} gateway-1 | {"time_local":"02/Aug/2024:16:24:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5d1b50a2675c2b1d29d90fe00fb83a94"} device-1 | {"level":"info","message":"GET /devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b? 200 23ms","method":"GET","requestID":"5d1b50a2675c2b1d29d90fe00fb83a94","responseTime":23,"status":200,"url":"/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5M30.pAhh-517-bwbFbGpyzt-0I8uegr5IE0xFHexlwWM7b8","level":"info","message":"auth send jwt","requestID":"91bc7b7f9e752d30515360a9e8757583"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"91bc7b7f9e752d30515360a9e8757583","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"91bc7b7f9e752d30515360a9e8757583"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.342511,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"91bc7b7f9e752d30515360a9e8757583","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615893,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5M30.pAhh-517-bwbFbGpyzt-0I8uegr5IE0xFHexlwWM7b8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"91bc7b7f9e752d30515360a9e8757583","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5"},"level":"info","message":"Attempting to run experiment","requestID":"91bc7b7f9e752d30515360a9e8757583"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5"},"level":"info","message":"Attempting to book experiment","requestID":"91bc7b7f9e752d30515360a9e8757583"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5"},"level":"info","message":"Successfully booked experiment","requestID":"91bc7b7f9e752d30515360a9e8757583"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bfc91de0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bfc96c00-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.423859,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bfc91de0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615893,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5M30.pAhh-517-bwbFbGpyzt-0I8uegr5IE0xFHexlwWM7b8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bfc91de0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.062405,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bfc96c00-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615893,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5M30.pAhh-517-bwbFbGpyzt-0I8uegr5IE0xFHexlwWM7b8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bfc96c00-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28adf9cd-dc30-444b-b6f9-37ada6d019a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28adf9cd-dc30-444b-b6f9-37ada6d019a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:51.411679975Z"}]},"request_id":"8912aae7-d57d-438f-b3a8-dd75137040cc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.703877} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bfc91de0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ecf53d1-1e12-4d3d-8675-68a39c306f8b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ecf53d1-1e12-4d3d-8675-68a39c306f8b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:51.463521494Z"}]},"request_id":"1904d2ef-84a2-4d3d-991f-91ddd545efcc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.7048104} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bfc96c00-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bfc91de0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0? 200 17ms","method":"GET","requestID":"bfc91de0-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bfc96c00-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b? 200 16ms","method":"GET","requestID":"bfc96c00-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5"},"level":"info","message":"Setting up experiment","requestID":"91bc7b7f9e752d30515360a9e8757583"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"91bc7b7f9e752d30515360a9e8757583"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5"},"level":"info","message":"Successfully locked booking for experiment","requestID":"91bc7b7f9e752d30515360a9e8757583"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"91bc7b7f9e752d30515360a9e8757583"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"91bc7b7f9e752d30515360a9e8757583"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5"},"level":"info","message":"Attempting to update booking for experiment","requestID":"91bc7b7f9e752d30515360a9e8757583"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5"},"level":"info","message":"Successfully updated booking for experiment","requestID":"91bc7b7f9e752d30515360a9e8757583"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5"},"level":"info","message":"Successfully set up experiment","requestID":"91bc7b7f9e752d30515360a9e8757583"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bfd1a960-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bfd1d070-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bfd245a0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.374842,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:53Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5"},"level":"info","message":"Successfully running experiment","requestID":"91bc7b7f9e752d30515360a9e8757583"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bfd1a960-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615893,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5M30.pAhh-517-bwbFbGpyzt-0I8uegr5IE0xFHexlwWM7b8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bfd1a960-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.009169,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bfd1d070-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615893,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5M30.pAhh-517-bwbFbGpyzt-0I8uegr5IE0xFHexlwWM7b8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"bfd1d070-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28adf9cd-dc30-444b-b6f9-37ada6d019a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28adf9cd-dc30-444b-b6f9-37ada6d019a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:51.411679975Z"}]},"request_id":"ea897157-f707-49ea-a5ff-f027c79ee6c1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.7660093} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"bfd1a960-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ecf53d1-1e12-4d3d-8675-68a39c306f8b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ecf53d1-1e12-4d3d-8675-68a39c306f8b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:51.463521494Z"}]},"request_id":"238e9de5-c27e-457f-b8e5-c14885600953","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.7676969} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"bfd1d070-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:37522","level":"info","msg":"Received request.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28adf9cd-dc30-444b-b6f9-37ada6d019a0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5cb55e78-08eb-47eb-94a8-049e95a7b9b3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.7725601} authorization-1 | {"client_addr":"127.0.0.1:37522","level":"info","msg":"Sent response.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.264181,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bfd245a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 16ms","method":"POST","requestID":"bfd245a0-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bfd1a960-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0? 200 27ms","method":"GET","requestID":"bfd1a960-50eb-11ef-8434-2f6d198c7397","responseTime":27,"status":200,"url":"/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bfd1d070-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b? 200 29ms","method":"GET","requestID":"bfd1d070-50eb-11ef-8434-2f6d198c7397","responseTime":29,"status":200,"url":"/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bfd245a0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd6b444f9-75ef-4e44-9e11-a791ce170cc5#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd6b444f9-75ef-4e44-9e11-a791ce170cc5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"f832f366-4655-4ec0-9fe6-85dc5969377e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.7827} device-1 | {"level":"info","message":"POST /devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0/signaling 200 29ms","method":"POST","requestID":"bfd245a0-50eb-11ef-8434-2f6d198c7397","responseTime":29,"status":200,"url":"/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0/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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a523146a-f9b5-4acd-ba6f-e0beadc3de5b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.7831795} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bfd6d980-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"91bc7b7f9e752d30515360a9e8757583","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bfd727a0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28adf9cd-dc30-444b-b6f9-37ada6d019a0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"66c0a4ca-f7eb-4daf-bb01-4a4cbe7423e6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.7922573} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.064334,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:53Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"91bc7b7f9e752d30515360a9e8757583"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bfd6d980-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0","object_type":"device","rebac_allow":false,"scope_allow":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":"bfd6d980-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:24:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.158","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"91bc7b7f9e752d30515360a9e8757583"} experiment-1 | {"level":"info","message":"POST /experiments? 201 150ms","method":"POST","requestID":"91bc7b7f9e752d30515360a9e8757583","responseTime":150,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ecf53d1-1e12-4d3d-8675-68a39c306f8b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bed0f877-44f9-46b2-a4fd-176110c52074","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.7946613} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.670306,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bfd727a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b","object_type":"device","rebac_allow":false,"scope_allow":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":"bfd727a0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bfd6d980-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5M30.pAhh-517-bwbFbGpyzt-0I8uegr5IE0xFHexlwWM7b8","level":"info","message":"auth send jwt","requestID":"671a7e0caec79464f2c5c01fe6211381"} device-1 | {"level":"info","message":"POST /devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0/signaling 200 17ms","method":"POST","requestID":"bfd6d980-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"671a7e0caec79464f2c5c01fe6211381","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"671a7e0caec79464f2c5c01fe6211381"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bfd9bfb0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bfd727a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b/signaling 200 19ms","method":"POST","requestID":"bfd727a0-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.68748,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"671a7e0caec79464f2c5c01fe6211381","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615893,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5M30.pAhh-517-bwbFbGpyzt-0I8uegr5IE0xFHexlwWM7b8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"671a7e0caec79464f2c5c01fe6211381","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ecf53d1-1e12-4d3d-8675-68a39c306f8b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5c459bd5-2b19-4f61-aeab-79cef56abe1a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.808161} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.151882,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bfd9bfb0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b","object_type":"device","rebac_allow":false,"scope_allow":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":"bfd9bfb0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28adf9cd-dc30-444b-b6f9-37ada6d019a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28adf9cd-dc30-444b-b6f9-37ada6d019a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:51.411679975Z"}]},"request_id":"43b6430f-b9d3-481b-8f64-dca0f1ede386","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.8110178} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"671a7e0caec79464f2c5c01fe6211381","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bfd9bfb0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b/signaling 200 12ms","method":"POST","requestID":"bfd9bfb0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"671a7e0caec79464f2c5c01fe6211381"} gateway-1 | {"time_local":"02/Aug/2024:16:24:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"671a7e0caec79464f2c5c01fe6211381"} device-1 | {"level":"info","message":"GET /devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0? 200 14ms","method":"GET","requestID":"671a7e0caec79464f2c5c01fe6211381","responseTime":14,"status":200,"url":"/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"91bc7b7f9e752d30515360a9e8757583"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bfdc09a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bfdc30b0-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5M30.pAhh-517-bwbFbGpyzt-0I8uegr5IE0xFHexlwWM7b8","level":"info","message":"auth send jwt","requestID":"27c7167c30170c7393f924da3510e93e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"27c7167c30170c7393f924da3510e93e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"27c7167c30170c7393f924da3510e93e"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.781309,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bfdc09a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615893,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5M30.pAhh-517-bwbFbGpyzt-0I8uegr5IE0xFHexlwWM7b8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bfdc09a0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.643969,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bfdc30b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615893,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5M30.pAhh-517-bwbFbGpyzt-0I8uegr5IE0xFHexlwWM7b8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bfdc30b0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.644631,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"27c7167c30170c7393f924da3510e93e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615893,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5M30.pAhh-517-bwbFbGpyzt-0I8uegr5IE0xFHexlwWM7b8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"27c7167c30170c7393f924da3510e93e","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28adf9cd-dc30-444b-b6f9-37ada6d019a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28adf9cd-dc30-444b-b6f9-37ada6d019a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:51.411679975Z"}]},"request_id":"ba246b61-994c-4744-b7f9-8bd04bf2abff","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.8276534} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bfdc09a0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ecf53d1-1e12-4d3d-8675-68a39c306f8b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ecf53d1-1e12-4d3d-8675-68a39c306f8b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:51.463521494Z"}]},"request_id":"f69396ec-da27-45cc-9142-0b7fbf471832","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.8297467} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bfdc30b0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ecf53d1-1e12-4d3d-8675-68a39c306f8b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ecf53d1-1e12-4d3d-8675-68a39c306f8b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:51.463521494Z"}]},"request_id":"d7b6ff48-2e13-4727-8da8-dc62b1966fb1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.8317044} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"27c7167c30170c7393f924da3510e93e","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bfdc09a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0? 200 15ms","method":"GET","requestID":"bfdc09a0-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bfdc30b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b? 200 18ms","method":"GET","requestID":"bfdc30b0-50eb-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"27c7167c30170c7393f924da3510e93e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5"},"level":"info","message":"Building connection plan","requestID":"91bc7b7f9e752d30515360a9e8757583"} gateway-1 | {"time_local":"02/Aug/2024:16:24:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"27c7167c30170c7393f924da3510e93e"} device-1 | {"level":"info","message":"GET /devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b? 200 17ms","method":"GET","requestID":"27c7167c30170c7393f924da3510e93e","responseTime":17,"status":200,"url":"/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b?"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"dc91560b-ff7a-4d70-845c-532a89b48b5f"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"8889b48e-512a-49ee-9424-e7f83d3d5838"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"2da47363-6be6-4ed4-a991-b1cb2cc9b370"}]},"level":"info","message":"Built pairwise service configurations","requestID":"91bc7b7f9e752d30515360a9e8757583"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"bfdf6500-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"bfdf6500-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"POST /rooms 201 4ms","method":"POST","requestID":"bfdf6500-50eb-11ef-a432-47ab85bb6d58","responseTime":4,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/eb72b66b-d624-4365-978e-86ed4fb6f9e3?id=74426607-c118-4544-83e5-9e3cad3e98f1","ws://localhost/rooms/eb72b66b-d624-4365-978e-86ed4fb6f9e3?id=40e1f0ef-6484-475c-bc00-19666c8a4812"]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"91bc7b7f9e752d30515360a9e8757583"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"bfe07670-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.669049,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bfe07670-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615893,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5M30.pAhh-517-bwbFbGpyzt-0I8uegr5IE0xFHexlwWM7b8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bfe07670-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"bee7cc0d-181d-49e1-9e31-42f7c83d5509","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.8595824} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"72f0a74c-da39-4c19-9ccd-aee777fe7551","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.859884} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"bfe07670-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"bfe07670-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"bfe07670-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/28443b40-11c3-4f95-a8f6-6c48c6bf6e88'","requestID":"bfe07670-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/28443b40-11c3-4f95-a8f6-6c48c6bf6e88'","requestID":"bfe07670-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"bfe07670-50eb-11ef-8434-2f6d198c7397"} 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":"bfe07670-50eb-11ef-8434-2f6d198c7397","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":"bfe07670-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/28443b40-11c3-4f95-a8f6-6c48c6bf6e88' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"28443b40-11c3-4f95-a8f6-6c48c6bf6e88","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"bfe70620-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"40e1f0ef-6484-475c-bc00-19666c8a4812\" in room \"http://localhost/rooms/eb72b66b-d624-4365-978e-86ed4fb6f9e3\"","requestID":"bfe70620-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"bfe70620-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"bfe75440-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"74426607-c118-4544-83e5-9e3cad3e98f1\" in room \"http://localhost/rooms/eb72b66b-d624-4365-978e-86ed4fb6f9e3\"","requestID":"bfe75440-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"bfe75440-50eb-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d0c2523afb648e6c3d04e65c8547c670","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":"d0c2523afb648e6c3d04e65c8547c670","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/28443b40-11c3-4f95-a8f6-6c48c6bf6e88"}}},"level":"info","message":"received a callback","requestID":"d0c2523afb648e6c3d04e65c8547c670"} device-1 | {"data":{"peerconnection":"28443b40-11c3-4f95-a8f6-6c48c6bf6e88","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"d0c2523afb648e6c3d04e65c8547c670","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24:53 +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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"d0c2523afb648e6c3d04e65c8547c670"} device-1 | {"data":{"peerconnection":"28443b40-11c3-4f95-a8f6-6c48c6bf6e88","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"91bc7b7f9e752d30515360a9e8757583"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bfebe820-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28adf9cd-dc30-444b-b6f9-37ada6d019a0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa7e950b-a640-4621-bed8-8ced8d6c98c2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.9277034} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.902629,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bfebe820-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0","object_type":"device","rebac_allow":false,"scope_allow":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":"bfebe820-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/28443b40-11c3-4f95-a8f6-6c48c6bf6e88' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"28443b40-11c3-4f95-a8f6-6c48c6bf6e88","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bfebe820-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0/signaling 200 12ms","method":"POST","requestID":"bfebe820-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1d841e3289ac32d2f1d999262982a284","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":"1d841e3289ac32d2f1d999262982a284","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bfee0b00-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/28443b40-11c3-4f95-a8f6-6c48c6bf6e88"}}},"level":"info","message":"received a callback","requestID":"1d841e3289ac32d2f1d999262982a284"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ecf53d1-1e12-4d3d-8675-68a39c306f8b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7f0c26f9-6cea-495f-b195-d24d93645f22","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.9414344} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.671166,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bfee0b00-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b","object_type":"device","rebac_allow":false,"scope_allow":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":"bfee0b00-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"bfef1c70-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:53Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bfee0b00-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b/signaling 200 11ms","method":"POST","requestID":"bfee0b00-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F28443b40-11c3-4f95-a8f6-6c48c6bf6e88","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"932f638b-28a7-4908-8dee-df9a93c7b851","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.9476533} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.648776,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/28443b40-11c3-4f95-a8f6-6c48c6bf6e88","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bfef1c70-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/28443b40-11c3-4f95-a8f6-6c48c6bf6e88","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":"bfef1c70-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"bfef1c70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/28443b40-11c3-4f95-a8f6-6c48c6bf6e88 200 8ms","method":"GET","requestID":"bfef1c70-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/peerconnections/28443b40-11c3-4f95-a8f6-6c48c6bf6e88"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 33ms","method":"POST","requestID":"1d841e3289ac32d2f1d999262982a284","responseTime":33,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24:53 +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.037","http_referrer":"","http_user_agent":"node-fetch","requestID":"1d841e3289ac32d2f1d999262982a284"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bff36230-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28adf9cd-dc30-444b-b6f9-37ada6d019a0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9572a1d9-935f-4004-b95b-0437d027f235","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.9754648} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.094587,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bff36230-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0","object_type":"device","rebac_allow":false,"scope_allow":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":"bff36230-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bff36230-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0/signaling 200 8ms","method":"POST","requestID":"bff36230-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bff50fe0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ecf53d1-1e12-4d3d-8675-68a39c306f8b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bffbceaa-b166-4263-b2bd-019833a80d80","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615893.9865344} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.473081,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bff50fe0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b","object_type":"device","rebac_allow":false,"scope_allow":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":"bff50fe0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bff50fe0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b/signaling 200 8ms","method":"POST","requestID":"bff50fe0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5M30.pAhh-517-bwbFbGpyzt-0I8uegr5IE0xFHexlwWM7b8","level":"info","message":"auth send jwt","requestID":"ca2a80a4db79dd23a2872920d4330d0f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ca2a80a4db79dd23a2872920d4330d0f","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5","requestID":"ca2a80a4db79dd23a2872920d4330d0f"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:54Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.556215,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ca2a80a4db79dd23a2872920d4330d0f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615893,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5M30.pAhh-517-bwbFbGpyzt-0I8uegr5IE0xFHexlwWM7b8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ca2a80a4db79dd23a2872920d4330d0f","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5","requestID":"ca2a80a4db79dd23a2872920d4330d0f"} gateway-1 | {"time_local":"02/Aug/2024:16:24:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5 HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ca2a80a4db79dd23a2872920d4330d0f"} experiment-1 | {"level":"info","message":"GET /experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5 200 12ms","method":"GET","requestID":"ca2a80a4db79dd23a2872920d4330d0f","responseTime":12,"status":200,"url":"/experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5NH0.Abg5id8V3ceVxJ4NvxmD2rzPZHdsXeTiQqX7Pbvpll0","level":"info","message":"auth send jwt","requestID":"5936e079e0c2ce26fe3a8d40f31f2d7b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5936e079e0c2ce26fe3a8d40f31f2d7b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5","requestID":"5936e079e0c2ce26fe3a8d40f31f2d7b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:54Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.739602,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:54Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"5936e079e0c2ce26fe3a8d40f31f2d7b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615894,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5NH0.Abg5id8V3ceVxJ4NvxmD2rzPZHdsXeTiQqX7Pbvpll0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5936e079e0c2ce26fe3a8d40f31f2d7b","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5"},"level":"info","message":"Attempting to finish experiment","requestID":"5936e079e0c2ce26fe3a8d40f31f2d7b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"bffc14c0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:54Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.781784,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:54Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/28443b40-11c3-4f95-a8f6-6c48c6bf6e88","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bffc14c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/28443b40-11c3-4f95-a8f6-6c48c6bf6e88","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615894,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5NH0.Abg5id8V3ceVxJ4NvxmD2rzPZHdsXeTiQqX7Pbvpll0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bffc14c0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:24:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/eb72b66b-d624-4365-978e-86ed4fb6f9e3?id=40e1f0ef-6484-475c-bc00-19666c8a4812 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.150","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"aba6329a59851f8552b1ac15a1bda152"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"40e1f0ef-6484-475c-bc00-19666c8a4812\" in room \"http://localhost/rooms/eb72b66b-d624-4365-978e-86ed4fb6f9e3\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/28443b40-11c3-4f95-a8f6-6c48c6bf6e88","device":"28adf9cd-dc30-444b-b6f9-37ada6d019a0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"40e1f0ef-6484-475c-bc00-19666c8a4812\" from room \"http://localhost/rooms/eb72b66b-d624-4365-978e-86ed4fb6f9e3\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/28443b40-11c3-4f95-a8f6-6c48c6bf6e88' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/28443b40-11c3-4f95-a8f6-6c48c6bf6e88' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"28443b40-11c3-4f95-a8f6-6c48c6bf6e88","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"02/Aug/2024:16:24:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/eb72b66b-d624-4365-978e-86ed4fb6f9e3?id=74426607-c118-4544-83e5-9e3cad3e98f1 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.151","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":"cb465b75bc58ebc6a5d2cdc56dc2ef5b"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"74426607-c118-4544-83e5-9e3cad3e98f1\" in room \"http://localhost/rooms/eb72b66b-d624-4365-978e-86ed4fb6f9e3\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"74426607-c118-4544-83e5-9e3cad3e98f1\" from room \"http://localhost/rooms/eb72b66b-d624-4365-978e-86ed4fb6f9e3\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f21377c10a695783ce0fa392b2402ce0","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":"f21377c10a695783ce0fa392b2402ce0","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F28443b40-11c3-4f95-a8f6-6c48c6bf6e88': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F28443b40-11c3-4f95-a8f6-6c48c6bf6e88","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"7b6add18-4f44-453f-857d-133879d49637","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615894.0451505} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a85ec47c-1413-4114-86ee-eede9e54b8f9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615894.0454414} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bc8afb731b44466131f8416b43345c6f","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":"bc8afb731b44466131f8416b43345c6f","responseTime":0,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"bffc14c0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/28443b40-11c3-4f95-a8f6-6c48c6bf6e88"}}},"level":"info","message":"received a callback","requestID":"f21377c10a695783ce0fa392b2402ce0"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/28443b40-11c3-4f95-a8f6-6c48c6bf6e88"}}},"level":"info","message":"received a callback","requestID":"bc8afb731b44466131f8416b43345c6f"} device-1 | {"data":{"peerconnection":"28443b40-11c3-4f95-a8f6-6c48c6bf6e88","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"bffc14c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/28443b40-11c3-4f95-a8f6-6c48c6bf6e88 204 38ms","method":"DELETE","requestID":"bffc14c0-50eb-11ef-8434-2f6d198c7397","responseTime":38,"status":204,"url":"/peerconnections/28443b40-11c3-4f95-a8f6-6c48c6bf6e88"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5"},"level":"info","message":"Successfully finished experiment","requestID":"5936e079e0c2ce26fe3a8d40f31f2d7b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c004ee60-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:54Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F28adf9cd-dc30-444b-b6f9-37ada6d019a0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b30cb688-e0b5-449c-9ffa-36b58367cd17","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615894.0916576} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.416557,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c004ee60-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0","object_type":"device","rebac_allow":false,"scope_allow":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":"c004ee60-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c004ee60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0/signaling 200 10ms","method":"POST","requestID":"c004ee60-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/28adf9cd-dc30-444b-b6f9-37ada6d019a0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c006c320-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd6b444f9-75ef-4e44-9e11-a791ce170cc5': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd6b444f9-75ef-4e44-9e11-a791ce170cc5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"70b8ee0b-2c8b-42fc-8236-7fcee5e1abd9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615894.098687} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d6dbad3e-872e-46f6-ae2c-3a21d13fe9e9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615894.098836} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"5936e079e0c2ce26fe3a8d40f31f2d7b","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:54Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ecf53d1-1e12-4d3d-8675-68a39c306f8b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"af2ee0e0-67ae-41cf-983c-7ceeaa1a047b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615894.1040268} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.482002,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c006c320-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b","object_type":"device","rebac_allow":false,"scope_allow":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":"c006c320-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c006c320-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b/signaling 200 11ms","method":"POST","requestID":"c006c320-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/8ecf53d1-1e12-4d3d-8675-68a39c306f8b/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5","requestID":"5936e079e0c2ce26fe3a8d40f31f2d7b"} gateway-1 | {"time_local":"02/Aug/2024:16:24:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5936e079e0c2ce26fe3a8d40f31f2d7b"} gateway-1 | {"time_local":"02/Aug/2024:16:24:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1542","request_time":"2.100","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"094742303b7a1d5515e9ba90c02d81b0"} experiment-1 | {"level":"info","message":"DELETE /experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5 204 146ms","method":"DELETE","requestID":"5936e079e0c2ce26fe3a8d40f31f2d7b","responseTime":146,"status":204,"url":"/experiments/d6b444f9-75ef-4e44-9e11-a791ce170cc5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"f21377c10a695783ce0fa392b2402ce0","responseTime":119,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24:54 +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.124","http_referrer":"","http_user_agent":"node-fetch","requestID":"f21377c10a695783ce0fa392b2402ce0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"bc8afb731b44466131f8416b43345c6f","responseTime":119,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24:54 +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.125","http_referrer":"","http_user_agent":"node-fetch","requestID":"bc8afb731b44466131f8416b43345c6f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5NH0.Abg5id8V3ceVxJ4NvxmD2rzPZHdsXeTiQqX7Pbvpll0","level":"info","message":"auth send jwt","requestID":"33969cf855c101a564a39f66ad156c7a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"33969cf855c101a564a39f66ad156c7a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"33969cf855c101a564a39f66ad156c7a"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:54Z"} gateway-1 | {"time_local":"02/Aug/2024:16:24:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1867","request_time":"0.675","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":"96af3a9e42d1e11ae9065d8b6ea3d891"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.820217,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"33969cf855c101a564a39f66ad156c7a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615894,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5NH0.Abg5id8V3ceVxJ4NvxmD2rzPZHdsXeTiQqX7Pbvpll0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"33969cf855c101a564a39f66ad156c7a","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/8ecf53d1-1e12-4d3d-8675-68a39c306f8b' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf9dd12-df89-4aaa-b976-9c259334858b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ed797947-f02d-4860-9913-505137b18b6d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615894.1912546} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"33969cf855c101a564a39f66ad156c7a","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/28adf9cd-dc30-444b-b6f9-37ada6d019a0' 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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9091659b-eb4c-4e63-ab05-dffe825465d3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615894.19636} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"33969cf855c101a564a39f66ad156c7a","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf9dd12-df89-4aaa-b976-9c259334858b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"24611d1a-52bc-4837-91c0-5faa47d1fe13","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615894.2055936} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6dfcfae0-8b79-4a6f-b59f-a72ed16fc79e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615894.2058501} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"33969cf855c101a564a39f66ad156c7a","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf9dd12-df89-4aaa-b976-9c259334858b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf9dd12-df89-4aaa-b976-9c259334858b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:54.205576616Z"}]},"request_id":"ce8b54e1-4c24-434f-ad38-63c6161a636e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615894.2104} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"33969cf855c101a564a39f66ad156c7a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"33969cf855c101a564a39f66ad156c7a"} gateway-1 | {"time_local":"02/Aug/2024:16:24:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"33969cf855c101a564a39f66ad156c7a"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"33969cf855c101a564a39f66ad156c7a","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5NH0.Abg5id8V3ceVxJ4NvxmD2rzPZHdsXeTiQqX7Pbvpll0","level":"info","message":"auth send jwt","requestID":"4580e9027fba2c907b463b8c33a0f630"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4580e9027fba2c907b463b8c33a0f630","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4580e9027fba2c907b463b8c33a0f630"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:54Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.846924,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"4580e9027fba2c907b463b8c33a0f630","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615894,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5NH0.Abg5id8V3ceVxJ4NvxmD2rzPZHdsXeTiQqX7Pbvpll0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4580e9027fba2c907b463b8c33a0f630","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcae693fb-7ed7-4671-a185-62bf04eb0708","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bb6f041b-94ca-47f5-a2c0-8d1480a753a1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615894.2425637} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4580e9027fba2c907b463b8c33a0f630","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"391b16fc-8291-43a2-a66a-81f80fce3c36","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615894.2480838} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4580e9027fba2c907b463b8c33a0f630","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcae693fb-7ed7-4671-a185-62bf04eb0708","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"6784d29c-31bb-471d-964a-6bdb0b39de83","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615894.2595098} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9f44b3df-e3ce-4180-926d-4ed8f0920944","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615894.2597554} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"4580e9027fba2c907b463b8c33a0f630","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcae693fb-7ed7-4671-a185-62bf04eb0708","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcae693fb-7ed7-4671-a185-62bf04eb0708","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:54.259492306Z"}]},"request_id":"e6f4f121-e349-43b7-8426-28e8251f30e0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615894.2643476} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4580e9027fba2c907b463b8c33a0f630","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4580e9027fba2c907b463b8c33a0f630"} gateway-1 | {"time_local":"02/Aug/2024:16:24:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4580e9027fba2c907b463b8c33a0f630"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"4580e9027fba2c907b463b8c33a0f630","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5NH0.Abg5id8V3ceVxJ4NvxmD2rzPZHdsXeTiQqX7Pbvpll0","level":"info","message":"auth send jwt","requestID":"735a5d33e0ac092c9588e479dd863249"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"735a5d33e0ac092c9588e479dd863249","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"735a5d33e0ac092c9588e479dd863249"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:54Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.209352,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"735a5d33e0ac092c9588e479dd863249","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615894,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5NH0.Abg5id8V3ceVxJ4NvxmD2rzPZHdsXeTiQqX7Pbvpll0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"735a5d33e0ac092c9588e479dd863249","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf9dd12-df89-4aaa-b976-9c259334858b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf9dd12-df89-4aaa-b976-9c259334858b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:54.205576616Z"}]},"request_id":"29329475-5004-46c3-a2b3-0db15f166ebb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615894.7809155} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"735a5d33e0ac092c9588e479dd863249","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cf91b552-bfdd-45a3-b1b6-11730eac45a8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615894.7854326} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"735a5d33e0ac092c9588e479dd863249","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf9dd12-df89-4aaa-b976-9c259334858b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf9dd12-df89-4aaa-b976-9c259334858b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:54.205576616Z"}]},"request_id":"b6dd024b-9b8b-4965-95d9-c3fbd3eeb07c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615894.7983725} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"735a5d33e0ac092c9588e479dd863249","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"735a5d33e0ac092c9588e479dd863249"} gateway-1 | {"time_local":"02/Aug/2024:16:24:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8cf9dd12-df89-4aaa-b976-9c259334858b HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.042","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"735a5d33e0ac092c9588e479dd863249"} device-1 | {"level":"info","message":"PATCH /devices/8cf9dd12-df89-4aaa-b976-9c259334858b 200 36ms","method":"PATCH","requestID":"735a5d33e0ac092c9588e479dd863249","responseTime":36,"status":200,"url":"/devices/8cf9dd12-df89-4aaa-b976-9c259334858b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5NH0.Abg5id8V3ceVxJ4NvxmD2rzPZHdsXeTiQqX7Pbvpll0","level":"info","message":"auth send jwt","requestID":"5926437511bf78efa5d46ba936f129c7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5926437511bf78efa5d46ba936f129c7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5926437511bf78efa5d46ba936f129c7"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:54Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.828834,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"5926437511bf78efa5d46ba936f129c7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615894,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5NH0.Abg5id8V3ceVxJ4NvxmD2rzPZHdsXeTiQqX7Pbvpll0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5926437511bf78efa5d46ba936f129c7","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5926437511bf78efa5d46ba936f129c7"} gateway-1 | {"time_local":"02/Aug/2024:16:24:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8cf9dd12-df89-4aaa-b976-9c259334858b/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"5926437511bf78efa5d46ba936f129c7"} device-1 | {"level":"info","message":"POST /devices/8cf9dd12-df89-4aaa-b976-9c259334858b/websocket 200 23ms","method":"POST","requestID":"5926437511bf78efa5d46ba936f129c7","responseTime":23,"status":200,"url":"/devices/8cf9dd12-df89-4aaa-b976-9c259334858b/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c7aaf8d98bdc46bde6fd1005b78055c9","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":"c7aaf8d98bdc46bde6fd1005b78055c9","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:24:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/cae693fb-7ed7-4671-a185-62bf04eb0708/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":"c7aaf8d98bdc46bde6fd1005b78055c9"} device-1 | {"level":"info","message":"OPTIONS /devices/cae693fb-7ed7-4671-a185-62bf04eb0708/websocket 200 1ms","method":"OPTIONS","requestID":"c7aaf8d98bdc46bde6fd1005b78055c9","responseTime":1,"status":200,"url":"/devices/cae693fb-7ed7-4671-a185-62bf04eb0708/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY","level":"info","message":"auth send jwt","requestID":"7563a669c0a7bf4c63a3a2d82d783f94"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7563a669c0a7bf4c63a3a2d82d783f94","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"7563a669c0a7bf4c63a3a2d82d783f94"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.27354,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"7563a669c0a7bf4c63a3a2d82d783f94","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615896,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7563a669c0a7bf4c63a3a2d82d783f94","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"7563a669c0a7bf4c63a3a2d82d783f94"} gateway-1 | {"time_local":"02/Aug/2024:16:24:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/cae693fb-7ed7-4671-a185-62bf04eb0708/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":"7563a669c0a7bf4c63a3a2d82d783f94"} device-1 | {"level":"info","message":"POST /devices/cae693fb-7ed7-4671-a185-62bf04eb0708/websocket 200 24ms","method":"POST","requestID":"7563a669c0a7bf4c63a3a2d82d783f94","responseTime":24,"status":200,"url":"/devices/cae693fb-7ed7-4671-a185-62bf04eb0708/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f47ec3bf79b1fadf05f37615f34d60f9","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":"f47ec3bf79b1fadf05f37615f34d60f9","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:24:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/cae693fb-7ed7-4671-a185-62bf04eb0708? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"f47ec3bf79b1fadf05f37615f34d60f9"} device-1 | {"level":"info","message":"OPTIONS /devices/cae693fb-7ed7-4671-a185-62bf04eb0708? 200 1ms","method":"OPTIONS","requestID":"f47ec3bf79b1fadf05f37615f34d60f9","responseTime":1,"status":200,"url":"/devices/cae693fb-7ed7-4671-a185-62bf04eb0708?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY","level":"info","message":"auth send jwt","requestID":"f6477c299e29e181cdf03f728067f2f1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f6477c299e29e181cdf03f728067f2f1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f6477c299e29e181cdf03f728067f2f1"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.185596,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6477c299e29e181cdf03f728067f2f1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615896,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f6477c299e29e181cdf03f728067f2f1","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcae693fb-7ed7-4671-a185-62bf04eb0708","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcae693fb-7ed7-4671-a185-62bf04eb0708","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:54.259492306Z"}]},"request_id":"844840c8-49f3-4086-9330-3b7e285668e8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.398597} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f6477c299e29e181cdf03f728067f2f1","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fbf1c5f9-7830-4765-a4c1-877640d3dc5d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.4079418} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"f6477c299e29e181cdf03f728067f2f1","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcae693fb-7ed7-4671-a185-62bf04eb0708","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcae693fb-7ed7-4671-a185-62bf04eb0708","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:54.259492306Z"}]},"request_id":"1dbc0824-896d-4fed-a146-97e861984dca","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.4207156} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f6477c299e29e181cdf03f728067f2f1","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f6477c299e29e181cdf03f728067f2f1"} gateway-1 | {"time_local":"02/Aug/2024:16:24:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/cae693fb-7ed7-4671-a185-62bf04eb0708? HTTP/1.1","status": "200","body_bytes_sent":"1007","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":"f6477c299e29e181cdf03f728067f2f1"} device-1 | {"level":"info","message":"PATCH /devices/cae693fb-7ed7-4671-a185-62bf04eb0708? 200 42ms","method":"PATCH","requestID":"f6477c299e29e181cdf03f728067f2f1","responseTime":42,"status":200,"url":"/devices/cae693fb-7ed7-4671-a185-62bf04eb0708?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY","level":"info","message":"auth send jwt","requestID":"af9ada7fbd053fa1b48ac9e844899440"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"af9ada7fbd053fa1b48ac9e844899440","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"af9ada7fbd053fa1b48ac9e844899440"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.285219,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"af9ada7fbd053fa1b48ac9e844899440","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615896,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"af9ada7fbd053fa1b48ac9e844899440","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf9dd12-df89-4aaa-b976-9c259334858b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf9dd12-df89-4aaa-b976-9c259334858b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:54.205576616Z"}]},"request_id":"abc8917e-0b9f-4f4d-871f-28a3ea235f99","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.451412} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"af9ada7fbd053fa1b48ac9e844899440","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"af9ada7fbd053fa1b48ac9e844899440"} gateway-1 | {"time_local":"02/Aug/2024:16:24:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8cf9dd12-df89-4aaa-b976-9c259334858b? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"af9ada7fbd053fa1b48ac9e844899440"} device-1 | {"level":"info","message":"GET /devices/8cf9dd12-df89-4aaa-b976-9c259334858b? 200 20ms","method":"GET","requestID":"af9ada7fbd053fa1b48ac9e844899440","responseTime":20,"status":200,"url":"/devices/8cf9dd12-df89-4aaa-b976-9c259334858b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY","level":"info","message":"auth send jwt","requestID":"88ca3e920b70580a2c19bf7fed6ea856"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"88ca3e920b70580a2c19bf7fed6ea856","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"88ca3e920b70580a2c19bf7fed6ea856"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.302277,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"88ca3e920b70580a2c19bf7fed6ea856","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615896,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"88ca3e920b70580a2c19bf7fed6ea856","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcae693fb-7ed7-4671-a185-62bf04eb0708","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcae693fb-7ed7-4671-a185-62bf04eb0708","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:54.259492306Z"}]},"request_id":"3555dae8-b1c1-45f2-9107-3a643305481e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.478938} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"88ca3e920b70580a2c19bf7fed6ea856","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"88ca3e920b70580a2c19bf7fed6ea856"} gateway-1 | {"time_local":"02/Aug/2024:16:24:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cae693fb-7ed7-4671-a185-62bf04eb0708? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"88ca3e920b70580a2c19bf7fed6ea856"} device-1 | {"level":"info","message":"GET /devices/cae693fb-7ed7-4671-a185-62bf04eb0708? 200 19ms","method":"GET","requestID":"88ca3e920b70580a2c19bf7fed6ea856","responseTime":19,"status":200,"url":"/devices/cae693fb-7ed7-4671-a185-62bf04eb0708?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY","level":"info","message":"auth send jwt","requestID":"a429a12963733b3356e4aad836323f77"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a429a12963733b3356e4aad836323f77","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"a429a12963733b3356e4aad836323f77"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.550942,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a429a12963733b3356e4aad836323f77","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615896,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a429a12963733b3356e4aad836323f77","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff"},"level":"info","message":"Attempting to run experiment","requestID":"a429a12963733b3356e4aad836323f77"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff"},"level":"info","message":"Attempting to book experiment","requestID":"a429a12963733b3356e4aad836323f77"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff"},"level":"info","message":"Successfully booked experiment","requestID":"a429a12963733b3356e4aad836323f77"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c17bafe0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c17c2510-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.653591,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c17bafe0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615896,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c17bafe0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.70736,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c17c2510-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615896,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c17c2510-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf9dd12-df89-4aaa-b976-9c259334858b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf9dd12-df89-4aaa-b976-9c259334858b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:54.205576616Z"}]},"request_id":"083786a8-9ee5-4d7a-b125-e0789dda8691","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.5543947} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"c17bafe0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcae693fb-7ed7-4671-a185-62bf04eb0708","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcae693fb-7ed7-4671-a185-62bf04eb0708","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:54.259492306Z"}]},"request_id":"88f57396-f351-4b21-92fe-a17b18c7d5ed","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.5562096} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c17c2510-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c17c2510-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/cae693fb-7ed7-4671-a185-62bf04eb0708? 200 19ms","method":"GET","requestID":"c17c2510-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/cae693fb-7ed7-4671-a185-62bf04eb0708?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c17bafe0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/8cf9dd12-df89-4aaa-b976-9c259334858b? 200 23ms","method":"GET","requestID":"c17bafe0-50eb-11ef-8434-2f6d198c7397","responseTime":23,"status":200,"url":"/devices/8cf9dd12-df89-4aaa-b976-9c259334858b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff"},"level":"info","message":"Setting up experiment","requestID":"a429a12963733b3356e4aad836323f77"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"a429a12963733b3356e4aad836323f77"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff"},"level":"info","message":"Successfully locked booking for experiment","requestID":"a429a12963733b3356e4aad836323f77"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"a429a12963733b3356e4aad836323f77"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"a429a12963733b3356e4aad836323f77"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff"},"level":"info","message":"Attempting to update booking for experiment","requestID":"a429a12963733b3356e4aad836323f77"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff"},"level":"info","message":"Successfully updated booking for experiment","requestID":"a429a12963733b3356e4aad836323f77"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff"},"level":"info","message":"Successfully set up experiment","requestID":"a429a12963733b3356e4aad836323f77"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c1863730-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c1868550-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c186ac60-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.262224,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.197194,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff"},"level":"info","message":"Successfully running experiment","requestID":"a429a12963733b3356e4aad836323f77"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c1863730-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615896,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"c1863730-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c1868550-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615896,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"c1868550-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37522","level":"info","msg":"Received request.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf9dd12-df89-4aaa-b976-9c259334858b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf9dd12-df89-4aaa-b976-9c259334858b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:54.205576616Z"}]},"request_id":"a78a55ef-28c1-422c-82da-7699d4a67e16","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.6320632} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf9dd12-df89-4aaa-b976-9c259334858b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a349dada-5133-4915-b2cb-7007e5029f40","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.6325476} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c1863730-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcae693fb-7ed7-4671-a185-62bf04eb0708","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcae693fb-7ed7-4671-a185-62bf04eb0708","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:54.259492306Z"}]},"request_id":"999ec905-747d-42ee-bfab-922c7ea547db","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.6332984} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c1868550-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:37522","level":"info","msg":"Sent response.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":10.496673,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c186ac60-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b","object_type":"device","rebac_allow":false,"scope_allow":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":"c186ac60-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c1863730-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/8cf9dd12-df89-4aaa-b976-9c259334858b? 200 32ms","method":"GET","requestID":"c1863730-50eb-11ef-8434-2f6d198c7397","responseTime":32,"status":200,"url":"/devices/8cf9dd12-df89-4aaa-b976-9c259334858b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c1868550-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/cae693fb-7ed7-4671-a185-62bf04eb0708? 200 32ms","method":"GET","requestID":"c1868550-50eb-11ef-8434-2f6d198c7397","responseTime":32,"status":200,"url":"/devices/cae693fb-7ed7-4671-a185-62bf04eb0708?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c186ac60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8cf9dd12-df89-4aaa-b976-9c259334858b/signaling 200 33ms","method":"POST","requestID":"c186ac60-50eb-11ef-8434-2f6d198c7397","responseTime":33,"status":200,"url":"/devices/8cf9dd12-df89-4aaa-b976-9c259334858b/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe51f0ccc-c96c-463a-8646-7a56f455c1ff#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe51f0ccc-c96c-463a-8646-7a56f455c1ff","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"315d8260-3b6b-4f46-a61a-250ae11971a9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.6478016} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b65fa8a5-70da-4b8f-92f9-e76b7a5dc70a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.6485684} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"a429a12963733b3356e4aad836323f77","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c18c78c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c18c9fd0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf9dd12-df89-4aaa-b976-9c259334858b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1caebe8d-0efd-4dd8-80ad-7a13a13fef94","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.6570895} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.896458,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c18c78c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b","object_type":"device","rebac_allow":false,"scope_allow":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":"c18c78c0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcae693fb-7ed7-4671-a185-62bf04eb0708","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e248cc64-f845-4544-87a8-24e64239096a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.6581233} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.181808,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c18c9fd0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708","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 | {"data":{"experiment":"http://localhost/experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"a429a12963733b3356e4aad836323f77"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c18c9fd0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:24:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.173","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a429a12963733b3356e4aad836323f77"} experiment-1 | {"level":"info","message":"POST /experiments? 201 166ms","method":"POST","requestID":"a429a12963733b3356e4aad836323f77","responseTime":166,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c18c78c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8cf9dd12-df89-4aaa-b976-9c259334858b/signaling 200 12ms","method":"POST","requestID":"c18c78c0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/8cf9dd12-df89-4aaa-b976-9c259334858b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY","level":"info","message":"auth send jwt","requestID":"8df84f98a6615805a299d25053219f91"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c18c9fd0-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8df84f98a6615805a299d25053219f91","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/cae693fb-7ed7-4671-a185-62bf04eb0708/signaling 200 13ms","method":"POST","requestID":"c18c9fd0-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/cae693fb-7ed7-4671-a185-62bf04eb0708/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c18ec2b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8df84f98a6615805a299d25053219f91"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.808955,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"8df84f98a6615805a299d25053219f91","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615896,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8df84f98a6615805a299d25053219f91","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcae693fb-7ed7-4671-a185-62bf04eb0708","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c99b172d-1844-4092-814c-3607a8708d1d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.6719298} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.440548,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c18ec2b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708","object_type":"device","rebac_allow":false,"scope_allow":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":"c18ec2b0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf9dd12-df89-4aaa-b976-9c259334858b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf9dd12-df89-4aaa-b976-9c259334858b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:54.205576616Z"}]},"request_id":"4a36b893-32f8-4119-a628-fa57f6fe74b0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.6759276} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c18ec2b0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"8df84f98a6615805a299d25053219f91","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/cae693fb-7ed7-4671-a185-62bf04eb0708/signaling 200 9ms","method":"POST","requestID":"c18ec2b0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/cae693fb-7ed7-4671-a185-62bf04eb0708/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"a429a12963733b3356e4aad836323f77"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c1909770-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c190e590-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8df84f98a6615805a299d25053219f91"} device-1 | {"level":"info","message":"GET /devices/8cf9dd12-df89-4aaa-b976-9c259334858b? 200 13ms","method":"GET","requestID":"8df84f98a6615805a299d25053219f91","responseTime":13,"status":200,"url":"/devices/8cf9dd12-df89-4aaa-b976-9c259334858b?"} gateway-1 | {"time_local":"02/Aug/2024:16:24:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8cf9dd12-df89-4aaa-b976-9c259334858b? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8df84f98a6615805a299d25053219f91"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.557063,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c1909770-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615896,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c1909770-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.594067,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c190e590-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615896,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c190e590-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY","level":"info","message":"auth send jwt","requestID":"908ff34ebe14691be266dee22ed50b56"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"908ff34ebe14691be266dee22ed50b56","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"908ff34ebe14691be266dee22ed50b56"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf9dd12-df89-4aaa-b976-9c259334858b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf9dd12-df89-4aaa-b976-9c259334858b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:54.205576616Z"}]},"request_id":"7077688c-bdd9-4446-96fe-4d04d4191053","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.6890786} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c1909770-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcae693fb-7ed7-4671-a185-62bf04eb0708","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcae693fb-7ed7-4671-a185-62bf04eb0708","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:54.259492306Z"}]},"request_id":"5badb1d1-b484-4f20-b722-c0ad9f981ba0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.6902215} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c190e590-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.639756,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"908ff34ebe14691be266dee22ed50b56","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615896,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"908ff34ebe14691be266dee22ed50b56","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c1909770-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/8cf9dd12-df89-4aaa-b976-9c259334858b? 200 20ms","method":"GET","requestID":"c1909770-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/8cf9dd12-df89-4aaa-b976-9c259334858b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c190e590-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/cae693fb-7ed7-4671-a185-62bf04eb0708? 200 19ms","method":"GET","requestID":"c190e590-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/cae693fb-7ed7-4671-a185-62bf04eb0708?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcae693fb-7ed7-4671-a185-62bf04eb0708","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcae693fb-7ed7-4671-a185-62bf04eb0708","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:54.259492306Z"}]},"request_id":"640ed6ea-bd67-46cb-bbf9-2df6ae77c868","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.7001657} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"908ff34ebe14691be266dee22ed50b56","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff"},"level":"info","message":"Building connection plan","requestID":"a429a12963733b3356e4aad836323f77"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"e61dadeb-c3db-41ef-ae59-8b72c77a24a7"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"ccf0f534-3e55-41ca-9371-8c6005c5ca7b"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"dd0c062f-5858-4732-a2b2-5bdd2e4879a9"}]},"level":"info","message":"Built pairwise service configurations","requestID":"a429a12963733b3356e4aad836323f77"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"908ff34ebe14691be266dee22ed50b56"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"c19440f0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"c19440f0-50eb-11ef-a432-47ab85bb6d58"} gateway-1 | {"time_local":"02/Aug/2024:16:24:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cae693fb-7ed7-4671-a185-62bf04eb0708? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"908ff34ebe14691be266dee22ed50b56"} device-1 | {"level":"info","message":"GET /devices/cae693fb-7ed7-4671-a185-62bf04eb0708? 200 16ms","method":"GET","requestID":"908ff34ebe14691be266dee22ed50b56","responseTime":16,"status":200,"url":"/devices/cae693fb-7ed7-4671-a185-62bf04eb0708?"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"c19440f0-50eb-11ef-a432-47ab85bb6d58","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/a9d1352b-bc8d-4d9c-a994-563b4d9bea8b?id=79f123d7-fe95-4964-9de2-c5a57744979a","ws://localhost/rooms/a9d1352b-bc8d-4d9c-a994-563b4d9bea8b?id=9f4333ba-faa1-443c-8840-b9641883982c"]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"a429a12963733b3356e4aad836323f77"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"c194dd30-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.620043,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c194dd30-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615896,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c194dd30-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"080f45dd-c410-4cd2-9511-87b3d930f966","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.7190716} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"33652dcb-4857-477c-91e1-f9a614e91639","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.7194963} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c194dd30-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"c194dd30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"c194dd30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/c51d0301-af55-43ac-b307-4db530fb6d8e'","requestID":"c194dd30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/c51d0301-af55-43ac-b307-4db530fb6d8e'","requestID":"c194dd30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"c194dd30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"c194dd30-50eb-11ef-8434-2f6d198c7397","responseTime":25,"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":"c194dd30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c51d0301-af55-43ac-b307-4db530fb6d8e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c51d0301-af55-43ac-b307-4db530fb6d8e","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"c19a8280-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"79f123d7-fe95-4964-9de2-c5a57744979a\" in room \"http://localhost/rooms/a9d1352b-bc8d-4d9c-a994-563b4d9bea8b\"","requestID":"c19a8280-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"c19a8280-50eb-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"88d72a6c362ba9a30baf691947401eef","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":"88d72a6c362ba9a30baf691947401eef","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"c19ad0a0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"9f4333ba-faa1-443c-8840-b9641883982c\" in room \"http://localhost/rooms/a9d1352b-bc8d-4d9c-a994-563b4d9bea8b\"","requestID":"c19ad0a0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"c19ad0a0-50eb-11ef-a432-47ab85bb6d58"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/c51d0301-af55-43ac-b307-4db530fb6d8e"}}},"level":"info","message":"received a callback","requestID":"88d72a6c362ba9a30baf691947401eef"} device-1 | {"data":{"peerconnection":"c51d0301-af55-43ac-b307-4db530fb6d8e","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 12ms","method":"POST","requestID":"88d72a6c362ba9a30baf691947401eef","responseTime":12,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24:56 +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.016","http_referrer":"","http_user_agent":"node-fetch","requestID":"88d72a6c362ba9a30baf691947401eef"} device-1 | {"data":{"peerconnection":"c51d0301-af55-43ac-b307-4db530fb6d8e","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"a429a12963733b3356e4aad836323f77"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c19f6480-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c51d0301-af55-43ac-b307-4db530fb6d8e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c51d0301-af55-43ac-b307-4db530fb6d8e","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf9dd12-df89-4aaa-b976-9c259334858b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6e039d5e-e6f8-4bcd-8788-bdfb7ba3596c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.7813003} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a3180cc20285754162b5184d4378734a","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 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.917908,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a3180cc20285754162b5184d4378734a","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c19f6480-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b","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 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/c51d0301-af55-43ac-b307-4db530fb6d8e"}}},"level":"info","message":"received a callback","requestID":"a3180cc20285754162b5184d4378734a"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c19f6480-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"c1a16050-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c19f6480-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} device-1 | {"level":"info","message":"POST /devices/8cf9dd12-df89-4aaa-b976-9c259334858b/signaling 200 16ms","method":"POST","requestID":"c19f6480-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/8cf9dd12-df89-4aaa-b976-9c259334858b/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc51d0301-af55-43ac-b307-4db530fb6d8e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a9082b45-276f-45ab-9314-81ca2b6fe19f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.793967} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.538852,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c51d0301-af55-43ac-b307-4db530fb6d8e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c1a16050-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/c51d0301-af55-43ac-b307-4db530fb6d8e","object_type":"peerconnection","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":"c1a24ab0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c1a16050-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"c1a16050-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/c51d0301-af55-43ac-b307-4db530fb6d8e 200 10ms","method":"GET","requestID":"c1a16050-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/peerconnections/c51d0301-af55-43ac-b307-4db530fb6d8e"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcae693fb-7ed7-4671-a185-62bf04eb0708","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"47178068-4ba0-4956-9442-439fb2fc0572","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.7997012} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.397114,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c1a24ab0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708","object_type":"device","rebac_allow":false,"scope_allow":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":"c1a24ab0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c1a24ab0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/cae693fb-7ed7-4671-a185-62bf04eb0708/signaling 200 10ms","method":"POST","requestID":"c1a24ab0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/cae693fb-7ed7-4671-a185-62bf04eb0708/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 55ms","method":"POST","requestID":"a3180cc20285754162b5184d4378734a","responseTime":55,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24:56 +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.059","http_referrer":"","http_user_agent":"node-fetch","requestID":"a3180cc20285754162b5184d4378734a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c1a90170-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf9dd12-df89-4aaa-b976-9c259334858b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1fc68b7b-1783-4eda-b6b3-33614964b237","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.8446512} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.017847,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c1a90170-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b","object_type":"device","rebac_allow":false,"scope_allow":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":"c1a90170-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c1a90170-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8cf9dd12-df89-4aaa-b976-9c259334858b/signaling 200 10ms","method":"POST","requestID":"c1a90170-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/8cf9dd12-df89-4aaa-b976-9c259334858b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY","level":"info","message":"auth send jwt","requestID":"046120824e5e0df3b0aefb3a9d97c2b7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c1aad630-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"046120824e5e0df3b0aefb3a9d97c2b7","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff","requestID":"046120824e5e0df3b0aefb3a9d97c2b7"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcae693fb-7ed7-4671-a185-62bf04eb0708","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"12fb4171-7e1c-46d3-b163-b13655ee5fc3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.8575823} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.247438,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.509346,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c1aad630-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708","object_type":"device","rebac_allow":false,"scope_allow":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":"c1aad630-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"046120824e5e0df3b0aefb3a9d97c2b7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615896,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"046120824e5e0df3b0aefb3a9d97c2b7","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c1aad630-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/cae693fb-7ed7-4671-a185-62bf04eb0708/signaling 200 11ms","method":"POST","requestID":"c1aad630-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/cae693fb-7ed7-4671-a185-62bf04eb0708/signaling"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff","requestID":"046120824e5e0df3b0aefb3a9d97c2b7"} experiment-1 | {"level":"info","message":"GET /experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff 200 16ms","method":"GET","requestID":"046120824e5e0df3b0aefb3a9d97c2b7","responseTime":16,"status":200,"url":"/experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff"} gateway-1 | {"time_local":"02/Aug/2024:16:24:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"046120824e5e0df3b0aefb3a9d97c2b7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY","level":"info","message":"auth send jwt","requestID":"3ed0a665623120580eec5b5c5ed4bdb1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3ed0a665623120580eec5b5c5ed4bdb1","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff","requestID":"3ed0a665623120580eec5b5c5ed4bdb1"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.178781,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"3ed0a665623120580eec5b5c5ed4bdb1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615896,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3ed0a665623120580eec5b5c5ed4bdb1","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff"},"level":"info","message":"Attempting to finish experiment","requestID":"3ed0a665623120580eec5b5c5ed4bdb1"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"c1b07b80-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.829959,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c51d0301-af55-43ac-b307-4db530fb6d8e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c1b07b80-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/c51d0301-af55-43ac-b307-4db530fb6d8e","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615896,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5Nn0.kKhF_5OwZMvd4FqPZMAZYyN8dPw6AD6XpwZJhWkZhiY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c1b07b80-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:24:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/a9d1352b-bc8d-4d9c-a994-563b4d9bea8b?id=79f123d7-fe95-4964-9de2-c5a57744979a HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.158","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"f487fdb9966ff1edd686b490663ea078"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"79f123d7-fe95-4964-9de2-c5a57744979a\" in room \"http://localhost/rooms/a9d1352b-bc8d-4d9c-a994-563b4d9bea8b\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/c51d0301-af55-43ac-b307-4db530fb6d8e","device":"cae693fb-7ed7-4671-a185-62bf04eb0708","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"79f123d7-fe95-4964-9de2-c5a57744979a\" from room \"http://localhost/rooms/a9d1352b-bc8d-4d9c-a994-563b4d9bea8b\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c51d0301-af55-43ac-b307-4db530fb6d8e' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/c51d0301-af55-43ac-b307-4db530fb6d8e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c51d0301-af55-43ac-b307-4db530fb6d8e","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"02/Aug/2024:16:24:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/a9d1352b-bc8d-4d9c-a994-563b4d9bea8b?id=9f4333ba-faa1-443c-8840-b9641883982c HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.158","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":"867d00fd856412266cd7c7289e6d4baa"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"9f4333ba-faa1-443c-8840-b9641883982c\" in room \"http://localhost/rooms/a9d1352b-bc8d-4d9c-a994-563b4d9bea8b\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"9f4333ba-faa1-443c-8840-b9641883982c\" from room \"http://localhost/rooms/a9d1352b-bc8d-4d9c-a994-563b4d9bea8b\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"660513a5699c10e4c31b39524ec1d8f4","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":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc51d0301-af55-43ac-b307-4db530fb6d8e': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc51d0301-af55-43ac-b307-4db530fb6d8e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"a1b1065e-1e58-49d1-b6b8-d5300b1fe139","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.9054675} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"660513a5699c10e4c31b39524ec1d8f4","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"70424faf-cb34-4569-a378-3a657ebd19b4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.9057102} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"944e837557bb6e90872604912ad99725","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":"944e837557bb6e90872604912ad99725","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/c51d0301-af55-43ac-b307-4db530fb6d8e"}}},"level":"info","message":"received a callback","requestID":"660513a5699c10e4c31b39524ec1d8f4"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"c1b07b80-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/c51d0301-af55-43ac-b307-4db530fb6d8e"}}},"level":"info","message":"received a callback","requestID":"944e837557bb6e90872604912ad99725"} device-1 | {"data":{"peerconnection":"c51d0301-af55-43ac-b307-4db530fb6d8e","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"c1b07b80-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/c51d0301-af55-43ac-b307-4db530fb6d8e 204 50ms","method":"DELETE","requestID":"c1b07b80-50eb-11ef-8434-2f6d198c7397","responseTime":50,"status":204,"url":"/peerconnections/c51d0301-af55-43ac-b307-4db530fb6d8e"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff"},"level":"info","message":"Successfully finished experiment","requestID":"3ed0a665623120580eec5b5c5ed4bdb1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c1bc1440-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cf9dd12-df89-4aaa-b976-9c259334858b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a60280c1-bf64-42e1-8a9b-5a62fe4b5a6d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.9710078} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.085803,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c1bc1440-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b","object_type":"device","rebac_allow":false,"scope_allow":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":"c1bc1440-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c1bc1440-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8cf9dd12-df89-4aaa-b976-9c259334858b/signaling 200 15ms","method":"POST","requestID":"c1bc1440-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/8cf9dd12-df89-4aaa-b976-9c259334858b/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe51f0ccc-c96c-463a-8646-7a56f455c1ff': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe51f0ccc-c96c-463a-8646-7a56f455c1ff","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"87fb0207-6cfd-4d9e-a839-da8dcd839e61","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.982074} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c6f69fd9-9811-4a86-980e-1ff1b110c2d1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.982579} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c1befa70-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"3ed0a665623120580eec5b5c5ed4bdb1","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcae693fb-7ed7-4671-a185-62bf04eb0708","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c6950289-3bbc-4285-928c-d15d7ee98bda","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615896.9897168} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.08439,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c1befa70-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cae693fb-7ed7-4671-a185-62bf04eb0708","object_type":"device","rebac_allow":false,"scope_allow":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":"c1befa70-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c1befa70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/cae693fb-7ed7-4671-a185-62bf04eb0708/signaling 200 13ms","method":"POST","requestID":"c1befa70-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/cae693fb-7ed7-4671-a185-62bf04eb0708/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff","requestID":"3ed0a665623120580eec5b5c5ed4bdb1"} gateway-1 | {"time_local":"02/Aug/2024:16:24:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff 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":"3ed0a665623120580eec5b5c5ed4bdb1"} gateway-1 | {"time_local":"02/Aug/2024:16:24:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1543","request_time":"2.227","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"a4675e2b5f8a90cc21fe5f16106af55e"} experiment-1 | {"level":"info","message":"DELETE /experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff 204 187ms","method":"DELETE","requestID":"3ed0a665623120580eec5b5c5ed4bdb1","responseTime":187,"status":204,"url":"/experiments/e51f0ccc-c96c-463a-8646-7a56f455c1ff"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ","level":"info","message":"auth send jwt","requestID":"247aa0f480d1301a7ce769171ab65377"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 159ms","method":"POST","requestID":"660513a5699c10e4c31b39524ec1d8f4","responseTime":159,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"247aa0f480d1301a7ce769171ab65377","responseTime":3,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:24: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.162","http_referrer":"","http_user_agent":"node-fetch","requestID":"660513a5699c10e4c31b39524ec1d8f4"} gateway-1 | {"time_local":"02/Aug/2024:16:24: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.163","http_referrer":"","http_user_agent":"node-fetch","requestID":"944e837557bb6e90872604912ad99725"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 159ms","method":"POST","requestID":"944e837557bb6e90872604912ad99725","responseTime":159,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1866","request_time":"0.736","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":"ea4cd97a60235058531076edc576fdc5"} device-1 | {"level":"info","message":"postDevices called","requestID":"247aa0f480d1301a7ce769171ab65377"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.956314,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:57Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/8cf9dd12-df89-4aaa-b976-9c259334858b' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"247aa0f480d1301a7ce769171ab65377","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615897,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"247aa0f480d1301a7ce769171ab65377","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/cae693fb-7ed7-4671-a185-62bf04eb0708' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa07277bc-502f-4d6b-b2e4-75c33cfa6503","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"cc54a6ed-24b2-4b27-a626-ea600b8c3978","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.0896246} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"247aa0f480d1301a7ce769171ab65377","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a2814291-1b05-405e-a41b-c30d5d1b1a19","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.09514} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"247aa0f480d1301a7ce769171ab65377","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa07277bc-502f-4d6b-b2e4-75c33cfa6503","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"ea9cd945-9d51-41c0-b33a-9900949d248b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.1046042} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5dadb1b7-62ee-4c08-8017-37e257ef7278","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.1047647} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"247aa0f480d1301a7ce769171ab65377","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa07277bc-502f-4d6b-b2e4-75c33cfa6503","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa07277bc-502f-4d6b-b2e4-75c33cfa6503","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:57.104582648Z"}]},"request_id":"c9e3e9e8-40c9-42b6-b929-e4466f3f1b25","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.1096294} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"247aa0f480d1301a7ce769171ab65377","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"247aa0f480d1301a7ce769171ab65377"} gateway-1 | {"time_local":"02/Aug/2024:16:24:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"247aa0f480d1301a7ce769171ab65377"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"247aa0f480d1301a7ce769171ab65377","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ","level":"info","message":"auth send jwt","requestID":"ca9d5f0ec3c4484ab2f3ea1dbb03e975"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ca9d5f0ec3c4484ab2f3ea1dbb03e975","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ca9d5f0ec3c4484ab2f3ea1dbb03e975"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.70448,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ca9d5f0ec3c4484ab2f3ea1dbb03e975","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615897,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ca9d5f0ec3c4484ab2f3ea1dbb03e975","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbcb9bb4-5a50-43e2-8cab-af45c740d981","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9456408b-3c9d-408f-a813-5d8776a354de","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.1328478} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ca9d5f0ec3c4484ab2f3ea1dbb03e975","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1d9698e6-c33c-4db9-950a-e17efd8ed211","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.1382182} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ca9d5f0ec3c4484ab2f3ea1dbb03e975","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbcb9bb4-5a50-43e2-8cab-af45c740d981","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"d8e86d77-facd-4146-bf4a-720d7376483e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.1537762} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"98d26942-a52f-48b8-9ea7-a6151ae6a909","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.1540196} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"ca9d5f0ec3c4484ab2f3ea1dbb03e975","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbcb9bb4-5a50-43e2-8cab-af45c740d981","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbcb9bb4-5a50-43e2-8cab-af45c740d981","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:57.153762241Z"}]},"request_id":"bc941af7-0d78-47ad-9685-a3c63e094a73","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.1587503} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ca9d5f0ec3c4484ab2f3ea1dbb03e975","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ca9d5f0ec3c4484ab2f3ea1dbb03e975"} gateway-1 | {"time_local":"02/Aug/2024:16:24:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ca9d5f0ec3c4484ab2f3ea1dbb03e975"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"ca9d5f0ec3c4484ab2f3ea1dbb03e975","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ","level":"info","message":"auth send jwt","requestID":"ff0d0d4ac4dc9f9982bfa31b60ceff23"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"ff0d0d4ac4dc9f9982bfa31b60ceff23","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ","level":"info","message":"auth send jwt","requestID":"f4634e1e101d2ee9ad8d254a8ad976e8"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"f4634e1e101d2ee9ad8d254a8ad976e8","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ff0d0d4ac4dc9f9982bfa31b60ceff23"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f4634e1e101d2ee9ad8d254a8ad976e8"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.793722,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ff0d0d4ac4dc9f9982bfa31b60ceff23","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615897,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ff0d0d4ac4dc9f9982bfa31b60ceff23","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.565115,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f4634e1e101d2ee9ad8d254a8ad976e8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615897,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f4634e1e101d2ee9ad8d254a8ad976e8","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbcb9bb4-5a50-43e2-8cab-af45c740d981","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbcb9bb4-5a50-43e2-8cab-af45c740d981","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:57.153762241Z"}]},"request_id":"1d62436a-eff6-4b20-a481-feed9426db3e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.6788425} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ff0d0d4ac4dc9f9982bfa31b60ceff23","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa07277bc-502f-4d6b-b2e4-75c33cfa6503","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa07277bc-502f-4d6b-b2e4-75c33cfa6503","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:57.104582648Z"}]},"request_id":"2f024bcf-a432-4560-8055-41fdfe6e7823","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.6803825} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f4634e1e101d2ee9ad8d254a8ad976e8","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ffa90585-cc36-4e3b-8c68-3d1a3068c823","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.686644} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"ff0d0d4ac4dc9f9982bfa31b60ceff23","responseTime":6,"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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dc450f99-8c74-40c5-81ce-209498910157","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.6898954} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f4634e1e101d2ee9ad8d254a8ad976e8","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa07277bc-502f-4d6b-b2e4-75c33cfa6503","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa07277bc-502f-4d6b-b2e4-75c33cfa6503","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:57.104582648Z"}]},"request_id":"86554127-d60d-4d90-8793-82bf14a8fb0d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.6943874} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f4634e1e101d2ee9ad8d254a8ad976e8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f4634e1e101d2ee9ad8d254a8ad976e8"} gateway-1 | {"time_local":"02/Aug/2024:16:24:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.042","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"f4634e1e101d2ee9ad8d254a8ad976e8"} device-1 | {"level":"info","message":"PATCH /devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503 200 31ms","method":"PATCH","requestID":"f4634e1e101d2ee9ad8d254a8ad976e8","responseTime":31,"status":200,"url":"/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ","level":"info","message":"auth send jwt","requestID":"f3428f9e309b343dcfb06e4e342a774d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f3428f9e309b343dcfb06e4e342a774d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f3428f9e309b343dcfb06e4e342a774d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.621067,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f3428f9e309b343dcfb06e4e342a774d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615897,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f3428f9e309b343dcfb06e4e342a774d","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbcb9bb4-5a50-43e2-8cab-af45c740d981","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbcb9bb4-5a50-43e2-8cab-af45c740d981","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:57.153762241Z"}]},"request_id":"37c9310e-4c45-47a1-a9d7-e4183e772ffc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.7069268} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ff0d0d4ac4dc9f9982bfa31b60ceff23","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ff0d0d4ac4dc9f9982bfa31b60ceff23"} gateway-1 | {"time_local":"02/Aug/2024:16:24:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.057","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"ff0d0d4ac4dc9f9982bfa31b60ceff23"} device-1 | {"level":"info","message":"PATCH /devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981 200 48ms","method":"PATCH","requestID":"ff0d0d4ac4dc9f9982bfa31b60ceff23","responseTime":48,"status":200,"url":"/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ","level":"info","message":"auth send jwt","requestID":"13753a81d73ed3d47778041350fce43a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"13753a81d73ed3d47778041350fce43a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"13753a81d73ed3d47778041350fce43a"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.850034,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"13753a81d73ed3d47778041350fce43a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615897,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f3428f9e309b343dcfb06e4e342a774d"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"13753a81d73ed3d47778041350fce43a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503/websocket 200 21ms","method":"POST","requestID":"f3428f9e309b343dcfb06e4e342a774d","responseTime":22,"status":200,"url":"/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:24:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"f3428f9e309b343dcfb06e4e342a774d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"13753a81d73ed3d47778041350fce43a"} gateway-1 | {"time_local":"02/Aug/2024:16:24:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"13753a81d73ed3d47778041350fce43a"} device-1 | {"level":"info","message":"POST /devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981/websocket 200 19ms","method":"POST","requestID":"13753a81d73ed3d47778041350fce43a","responseTime":19,"status":200,"url":"/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ","level":"info","message":"auth send jwt","requestID":"02d0d62d37a9626c42dadd8cd74f2bb1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"02d0d62d37a9626c42dadd8cd74f2bb1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"02d0d62d37a9626c42dadd8cd74f2bb1"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.691553,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"02d0d62d37a9626c42dadd8cd74f2bb1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615897,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"02d0d62d37a9626c42dadd8cd74f2bb1","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa07277bc-502f-4d6b-b2e4-75c33cfa6503","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa07277bc-502f-4d6b-b2e4-75c33cfa6503","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:57.104582648Z"}]},"request_id":"1311e037-628a-439c-8c28-7a2608da3b87","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.7722611} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"02d0d62d37a9626c42dadd8cd74f2bb1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"02d0d62d37a9626c42dadd8cd74f2bb1"} gateway-1 | {"time_local":"02/Aug/2024:16:24:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"02d0d62d37a9626c42dadd8cd74f2bb1"} device-1 | {"level":"info","message":"GET /devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503? 200 15ms","method":"GET","requestID":"02d0d62d37a9626c42dadd8cd74f2bb1","responseTime":15,"status":200,"url":"/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ","level":"info","message":"auth send jwt","requestID":"4f405bcfbd3c57412211e00789f58d69"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4f405bcfbd3c57412211e00789f58d69","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4f405bcfbd3c57412211e00789f58d69"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.659675,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"4f405bcfbd3c57412211e00789f58d69","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615897,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4f405bcfbd3c57412211e00789f58d69","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbcb9bb4-5a50-43e2-8cab-af45c740d981","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbcb9bb4-5a50-43e2-8cab-af45c740d981","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:57.153762241Z"}]},"request_id":"78f75689-cedb-41cc-922f-10e36a02b7a3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.7926843} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4f405bcfbd3c57412211e00789f58d69","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4f405bcfbd3c57412211e00789f58d69"} gateway-1 | {"time_local":"02/Aug/2024:16:24:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4f405bcfbd3c57412211e00789f58d69"} device-1 | {"level":"info","message":"GET /devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981? 200 15ms","method":"GET","requestID":"4f405bcfbd3c57412211e00789f58d69","responseTime":15,"status":200,"url":"/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ","level":"info","message":"auth send jwt","requestID":"f5115da24776648a7fa0d18460cec46b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f5115da24776648a7fa0d18460cec46b","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"f5115da24776648a7fa0d18460cec46b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.1568,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f5115da24776648a7fa0d18460cec46b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615897,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f5115da24776648a7fa0d18460cec46b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1254954d-61e4-410e-8620-48258e11d985"},"level":"info","message":"Attempting to run experiment","requestID":"f5115da24776648a7fa0d18460cec46b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1254954d-61e4-410e-8620-48258e11d985"},"level":"info","message":"Attempting to book experiment","requestID":"f5115da24776648a7fa0d18460cec46b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1254954d-61e4-410e-8620-48258e11d985"},"level":"info","message":"Successfully booked experiment","requestID":"f5115da24776648a7fa0d18460cec46b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c242f780-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c24345a0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.940964,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c242f780-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615897,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c242f780-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.39043,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c24345a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615897,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c24345a0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa07277bc-502f-4d6b-b2e4-75c33cfa6503","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa07277bc-502f-4d6b-b2e4-75c33cfa6503","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:57.104582648Z"}]},"request_id":"99fb95cc-d12a-47f0-a0fa-a04f0c7a4a3c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.8583732} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c242f780-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbcb9bb4-5a50-43e2-8cab-af45c740d981","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbcb9bb4-5a50-43e2-8cab-af45c740d981","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:57.153762241Z"}]},"request_id":"2ebbe61a-0e59-4fd2-8e06-ad3d5e08ffff","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.8590972} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c24345a0-50eb-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c242f780-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503? 200 17ms","method":"GET","requestID":"c242f780-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c24345a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981? 200 17ms","method":"GET","requestID":"c24345a0-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1254954d-61e4-410e-8620-48258e11d985"},"level":"info","message":"Setting up experiment","requestID":"f5115da24776648a7fa0d18460cec46b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1254954d-61e4-410e-8620-48258e11d985"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"f5115da24776648a7fa0d18460cec46b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1254954d-61e4-410e-8620-48258e11d985"},"level":"info","message":"Successfully locked booking for experiment","requestID":"f5115da24776648a7fa0d18460cec46b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1254954d-61e4-410e-8620-48258e11d985"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"f5115da24776648a7fa0d18460cec46b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1254954d-61e4-410e-8620-48258e11d985"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"f5115da24776648a7fa0d18460cec46b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1254954d-61e4-410e-8620-48258e11d985"},"level":"info","message":"Attempting to update booking for experiment","requestID":"f5115da24776648a7fa0d18460cec46b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1254954d-61e4-410e-8620-48258e11d985"},"level":"info","message":"Successfully updated booking for experiment","requestID":"f5115da24776648a7fa0d18460cec46b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1254954d-61e4-410e-8620-48258e11d985"},"level":"info","message":"Successfully set up experiment","requestID":"f5115da24776648a7fa0d18460cec46b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c24ede60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c24f5390-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c24fa1b0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.865196,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:57Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1254954d-61e4-410e-8620-48258e11d985"},"level":"info","message":"Successfully running experiment","requestID":"f5115da24776648a7fa0d18460cec46b"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c24ede60-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615897,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"c24ede60-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.649415,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"client_addr":"127.0.0.1:37522","level":"info","msg":"Received request.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c24f5390-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615897,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"c24f5390-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37522","level":"info","msg":"Sent response.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.172553,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa07277bc-502f-4d6b-b2e4-75c33cfa6503","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"062091be-3a7c-4b5e-9cd1-3b7a9218e61a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.9429502} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c24fa1b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503","object_type":"device","rebac_allow":false,"scope_allow":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":"c24fa1b0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa07277bc-502f-4d6b-b2e4-75c33cfa6503","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa07277bc-502f-4d6b-b2e4-75c33cfa6503","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:57.104582648Z"}]},"request_id":"1778fc48-fb59-4c7e-b547-53cd9244729c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.948747} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"c24ede60-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c24fa1b0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbcb9bb4-5a50-43e2-8cab-af45c740d981","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbcb9bb4-5a50-43e2-8cab-af45c740d981","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:57.153762241Z"}]},"request_id":"af0c9cf6-0e32-43a5-aae4-fc3c72df90ad","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.9532146} device-1 | {"level":"info","message":"POST /devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503/signaling 200 23ms","method":"POST","requestID":"c24fa1b0-50eb-11ef-8434-2f6d198c7397","responseTime":23,"status":200,"url":"/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c24f5390-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c253e770-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c24ede60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503? 200 39ms","method":"GET","requestID":"c24ede60-50eb-11ef-8434-2f6d198c7397","responseTime":39,"status":200,"url":"/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c24f5390-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1254954d-61e4-410e-8620-48258e11d985#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1254954d-61e4-410e-8620-48258e11d985","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"45483c20-a584-40d1-ab53-f7516498ef35","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.9671912} device-1 | {"level":"info","message":"GET /devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981? 200 38ms","method":"GET","requestID":"c24f5390-50eb-11ef-8434-2f6d198c7397","responseTime":38,"status":200,"url":"/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981?"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbcb9bb4-5a50-43e2-8cab-af45c740d981","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b515057b-238e-497c-b12f-e9ca84812de4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.9673507} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"51600996-579c-4d6d-8d28-51808210e221","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.967681} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.840084,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"f5115da24776648a7fa0d18460cec46b","responseTime":28,"status":200,"url":"/relations/update"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c253e770-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981","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":"c255bc30-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"c253e770-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:57Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c253e770-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa07277bc-502f-4d6b-b2e4-75c33cfa6503","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8af42b57-418c-435e-8910-f7038e1a01df","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.9790952} device-1 | {"level":"info","message":"POST /devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981/signaling 200 20ms","method":"POST","requestID":"c253e770-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.779479,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c255bc30-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503","object_type":"device","rebac_allow":false,"scope_allow":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":"c255bc30-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/1254954d-61e4-410e-8620-48258e11d985","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"f5115da24776648a7fa0d18460cec46b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c255bc30-50eb-11ef-8434-2f6d198c7397"} gateway-1 | {"time_local":"02/Aug/2024:16:24:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"816","request_time":"0.186","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f5115da24776648a7fa0d18460cec46b"} experiment-1 | {"level":"info","message":"POST /experiments? 201 182ms","method":"POST","requestID":"f5115da24776648a7fa0d18460cec46b","responseTime":182,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"POST /devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503/signaling 200 15ms","method":"POST","requestID":"c255bc30-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c258a260-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ","level":"info","message":"auth send jwt","requestID":"d20894a8a6028cca8770c8412874ccc7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d20894a8a6028cca8770c8412874ccc7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d20894a8a6028cca8770c8412874ccc7"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbcb9bb4-5a50-43e2-8cab-af45c740d981","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"acfa6472-0494-4b50-abfb-753107d54890","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615897.9962163} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.902062,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d20894a8a6028cca8770c8412874ccc7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615897,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d20894a8a6028cca8770c8412874ccc7","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.904888,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c258a260-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981","object_type":"device","rebac_allow":false,"scope_allow":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":"c258a260-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c258a260-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981/signaling 200 11ms","method":"POST","requestID":"c258a260-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1254954d-61e4-410e-8620-48258e11d985"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"f5115da24776648a7fa0d18460cec46b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c25ac540-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa07277bc-502f-4d6b-b2e4-75c33cfa6503","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa07277bc-502f-4d6b-b2e4-75c33cfa6503","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:57.104582648Z"}]},"request_id":"c3ee00c2-7646-431a-8b4c-afb8ff8a4b36","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.005261} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c25b1360-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d20894a8a6028cca8770c8412874ccc7","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d20894a8a6028cca8770c8412874ccc7"} gateway-1 | {"time_local":"02/Aug/2024:16:24:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d20894a8a6028cca8770c8412874ccc7"} device-1 | {"level":"info","message":"GET /devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503? 200 17ms","method":"GET","requestID":"d20894a8a6028cca8770c8412874ccc7","responseTime":17,"status":200,"url":"/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.713179,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c25ac540-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615897,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c25ac540-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.121772,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c25b1360-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615897,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c25b1360-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE","level":"info","message":"auth send jwt","requestID":"41c2b133298f810b54ef31049a4e0822"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"41c2b133298f810b54ef31049a4e0822","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"41c2b133298f810b54ef31049a4e0822"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa07277bc-502f-4d6b-b2e4-75c33cfa6503","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa07277bc-502f-4d6b-b2e4-75c33cfa6503","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:57.104582648Z"}]},"request_id":"e5162b5d-d26d-4626-bca9-04a8b4f6fa86","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.0182486} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbcb9bb4-5a50-43e2-8cab-af45c740d981","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbcb9bb4-5a50-43e2-8cab-af45c740d981","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:57.153762241Z"}]},"request_id":"8ce8d512-fea1-4888-8ba9-8c3223c31d8b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.02014} authorization-1 | {"level":"info","message":"POST /relations/query 200 10ms","method":"POST","requestID":"c25ac540-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"c25b1360-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c25ac540-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.870908,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} device-1 | {"level":"info","message":"GET /devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503? 200 24ms","method":"GET","requestID":"c25ac540-50eb-11ef-8434-2f6d198c7397","responseTime":24,"status":200,"url":"/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"41c2b133298f810b54ef31049a4e0822","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615898,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"41c2b133298f810b54ef31049a4e0822","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c25b1360-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981? 200 26ms","method":"GET","requestID":"c25b1360-50eb-11ef-8434-2f6d198c7397","responseTime":26,"status":200,"url":"/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbcb9bb4-5a50-43e2-8cab-af45c740d981","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbcb9bb4-5a50-43e2-8cab-af45c740d981","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:57.153762241Z"}]},"request_id":"78c87801-037c-41e1-8f78-c024184701aa","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.0327337} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1254954d-61e4-410e-8620-48258e11d985"},"level":"info","message":"Building connection plan","requestID":"f5115da24776648a7fa0d18460cec46b"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"8ae5211d-2981-4f6d-83cf-ea48ff580723"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"208a81d9-7f7c-44af-88c1-1876f14a9177"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"331a3af6-c3cc-457e-8067-a5a12c5b2c62"}]},"level":"info","message":"Built pairwise service configurations","requestID":"f5115da24776648a7fa0d18460cec46b"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"41c2b133298f810b54ef31049a4e0822","responseTime":4,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"c25f8030-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"c25f8030-50eb-11ef-a432-47ab85bb6d58"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"41c2b133298f810b54ef31049a4e0822"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"c25f8030-50eb-11ef-a432-47ab85bb6d58","responseTime":1,"status":201,"url":"/rooms"} device-1 | {"level":"info","message":"GET /devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981? 200 19ms","method":"GET","requestID":"41c2b133298f810b54ef31049a4e0822","responseTime":19,"status":200,"url":"/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981?"} gateway-1 | {"time_local":"02/Aug/2024:16:24:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"41c2b133298f810b54ef31049a4e0822"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/0d7bc976-c671-43eb-9ef4-e26786f814fa?id=4128ba3c-04da-4efb-9c38-be3467746b3d","ws://localhost/rooms/0d7bc976-c671-43eb-9ef4-e26786f814fa?id=1d7e4356-05f3-4be1-a195-d785d4a71156"]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"f5115da24776648a7fa0d18460cec46b"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"c2601c70-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.864456,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c2601c70-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615897,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5N30.Lqu1eIYAWyDs9peKZFeRWWfLW86LZ-WrrHSsAhb7aFQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c2601c70-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"1bba23d2-cd5b-4c9f-9719-e22d0648ec4d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.052212} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e810693d-d1f6-445a-a741-875c76969639","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.0525205} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"c2601c70-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"c2601c70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"c2601c70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/4a12eace-a85b-44ed-9423-69d742476899'","requestID":"c2601c70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/4a12eace-a85b-44ed-9423-69d742476899'","requestID":"c2601c70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"c2601c70-50eb-11ef-8434-2f6d198c7397"} 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":"c2601c70-50eb-11ef-8434-2f6d198c7397","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":"c2601c70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4a12eace-a85b-44ed-9423-69d742476899' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4a12eace-a85b-44ed-9423-69d742476899","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"c265e8d0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"4128ba3c-04da-4efb-9c38-be3467746b3d\" in room \"http://localhost/rooms/0d7bc976-c671-43eb-9ef4-e26786f814fa\"","requestID":"c265e8d0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"c265e8d0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"c2660fe0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1d7e4356-05f3-4be1-a195-d785d4a71156\" in room \"http://localhost/rooms/0d7bc976-c671-43eb-9ef4-e26786f814fa\"","requestID":"c2660fe0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"c2660fe0-50eb-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ccd54b4aff45964b51b7e362af2fbaf6","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":"ccd54b4aff45964b51b7e362af2fbaf6","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/4a12eace-a85b-44ed-9423-69d742476899"}}},"level":"info","message":"received a callback","requestID":"ccd54b4aff45964b51b7e362af2fbaf6"} device-1 | {"data":{"peerconnection":"4a12eace-a85b-44ed-9423-69d742476899","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"ccd54b4aff45964b51b7e362af2fbaf6","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24:58 +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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"ccd54b4aff45964b51b7e362af2fbaf6"} device-1 | {"data":{"peerconnection":"4a12eace-a85b-44ed-9423-69d742476899","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1254954d-61e4-410e-8620-48258e11d985"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"f5115da24776648a7fa0d18460cec46b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c2699250-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa07277bc-502f-4d6b-b2e4-75c33cfa6503","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"297bba93-2431-4807-b356-fbd5830aaf4e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.1058347} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.29203,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c2699250-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503","object_type":"device","rebac_allow":false,"scope_allow":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":"c2699250-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4a12eace-a85b-44ed-9423-69d742476899' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4a12eace-a85b-44ed-9423-69d742476899","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"792a8104e0d983852c3a06face34be82","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)"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c2699250-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503/signaling 200 15ms","method":"POST","requestID":"c2699250-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"792a8104e0d983852c3a06face34be82","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c26c5170-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/4a12eace-a85b-44ed-9423-69d742476899"}}},"level":"info","message":"received a callback","requestID":"792a8104e0d983852c3a06face34be82"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbcb9bb4-5a50-43e2-8cab-af45c740d981","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"53f5f95e-ddb2-4978-b701-c50c5cd39169","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.123414} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.581192,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"c26d14c0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c26c5170-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981","object_type":"device","rebac_allow":false,"scope_allow":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":"c26c5170-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c26c5170-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981/signaling 200 8ms","method":"POST","requestID":"c26c5170-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4a12eace-a85b-44ed-9423-69d742476899","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d9814059-3143-4208-a367-af8fb90fddaf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.128911} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.318015,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4a12eace-a85b-44ed-9423-69d742476899","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c26d14c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/4a12eace-a85b-44ed-9423-69d742476899","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":"c26d14c0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"c26d14c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/4a12eace-a85b-44ed-9423-69d742476899 200 8ms","method":"GET","requestID":"c26d14c0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/peerconnections/4a12eace-a85b-44ed-9423-69d742476899"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 25ms","method":"POST","requestID":"792a8104e0d983852c3a06face34be82","responseTime":25,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24:58 +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.030","http_referrer":"","http_user_agent":"node-fetch","requestID":"792a8104e0d983852c3a06face34be82"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c2704910-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbcb9bb4-5a50-43e2-8cab-af45c740d981","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e998bad3-169c-4fa9-9548-9f7d48fe1e21","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.1504574} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.601995,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c2704910-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981","object_type":"device","rebac_allow":false,"scope_allow":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":"c2704910-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c2704910-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981/signaling 200 10ms","method":"POST","requestID":"c2704910-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c2721dd0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa07277bc-502f-4d6b-b2e4-75c33cfa6503","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"834d7f6e-51ce-455e-af02-0a3c6b45fa14","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.1613417} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.447937,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c2721dd0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503","object_type":"device","rebac_allow":false,"scope_allow":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":"c2721dd0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c2721dd0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503/signaling 200 8ms","method":"POST","requestID":"c2721dd0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE","level":"info","message":"auth send jwt","requestID":"c693635bc0791a3e1a4e6ae9c4507b6f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c693635bc0791a3e1a4e6ae9c4507b6f","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/1254954d-61e4-410e-8620-48258e11d985","requestID":"c693635bc0791a3e1a4e6ae9c4507b6f"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.641096,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1254954d-61e4-410e-8620-48258e11d985","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c693635bc0791a3e1a4e6ae9c4507b6f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/1254954d-61e4-410e-8620-48258e11d985","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615898,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c693635bc0791a3e1a4e6ae9c4507b6f","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/1254954d-61e4-410e-8620-48258e11d985","requestID":"c693635bc0791a3e1a4e6ae9c4507b6f"} gateway-1 | {"time_local":"02/Aug/2024:16:24:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/1254954d-61e4-410e-8620-48258e11d985 HTTP/1.1","status": "200","body_bytes_sent":"889","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c693635bc0791a3e1a4e6ae9c4507b6f"} experiment-1 | {"level":"info","message":"GET /experiments/1254954d-61e4-410e-8620-48258e11d985 200 9ms","method":"GET","requestID":"c693635bc0791a3e1a4e6ae9c4507b6f","responseTime":9,"status":200,"url":"/experiments/1254954d-61e4-410e-8620-48258e11d985"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE","level":"info","message":"auth send jwt","requestID":"860d6ec2c9aa168a0366299fcddb1a7c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"860d6ec2c9aa168a0366299fcddb1a7c","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/1254954d-61e4-410e-8620-48258e11d985","requestID":"860d6ec2c9aa168a0366299fcddb1a7c"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.893957,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1254954d-61e4-410e-8620-48258e11d985","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"860d6ec2c9aa168a0366299fcddb1a7c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/1254954d-61e4-410e-8620-48258e11d985","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615898,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"860d6ec2c9aa168a0366299fcddb1a7c","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1254954d-61e4-410e-8620-48258e11d985"},"level":"info","message":"Attempting to finish experiment","requestID":"860d6ec2c9aa168a0366299fcddb1a7c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"c27aa950-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.104804,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4a12eace-a85b-44ed-9423-69d742476899","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c27aa950-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/4a12eace-a85b-44ed-9423-69d742476899","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615898,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c27aa950-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:24:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/0d7bc976-c671-43eb-9ef4-e26786f814fa?id=4128ba3c-04da-4efb-9c38-be3467746b3d HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.151","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"2fc92a671bafa87f8ed29e24d7a7502d"} gateway-1 | {"time_local":"02/Aug/2024:16:24:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/0d7bc976-c671-43eb-9ef4-e26786f814fa?id=1d7e4356-05f3-4be1-a195-d785d4a71156 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.151","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"e4af8100f860de1efc974711b1df1a80"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"4128ba3c-04da-4efb-9c38-be3467746b3d\" in room \"http://localhost/rooms/0d7bc976-c671-43eb-9ef4-e26786f814fa\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"4128ba3c-04da-4efb-9c38-be3467746b3d\" from room \"http://localhost/rooms/0d7bc976-c671-43eb-9ef4-e26786f814fa\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"1d7e4356-05f3-4be1-a195-d785d4a71156\" in room \"http://localhost/rooms/0d7bc976-c671-43eb-9ef4-e26786f814fa\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"1d7e4356-05f3-4be1-a195-d785d4a71156\" from room \"http://localhost/rooms/0d7bc976-c671-43eb-9ef4-e26786f814fa\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4a12eace-a85b-44ed-9423-69d742476899' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/4a12eace-a85b-44ed-9423-69d742476899' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4a12eace-a85b-44ed-9423-69d742476899","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5b5e921c6ba9e880a2a8f2b8c5f9bc83","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":"5b5e921c6ba9e880a2a8f2b8c5f9bc83","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4a12eace-a85b-44ed-9423-69d742476899': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4a12eace-a85b-44ed-9423-69d742476899","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"9eb37ecd-d2ad-4090-9d0c-02d58b23d7c2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.2323925} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"877836267b02d4ba35c17e6abd304798","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":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/4a12eace-a85b-44ed-9423-69d742476899"}}},"level":"info","message":"received a callback","requestID":"5b5e921c6ba9e880a2a8f2b8c5f9bc83"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"877836267b02d4ba35c17e6abd304798","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a0c0c57b-4f26-42bb-856b-11eb017a403d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.2328598} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/4a12eace-a85b-44ed-9423-69d742476899"}}},"level":"info","message":"received a callback","requestID":"877836267b02d4ba35c17e6abd304798"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"c27aa950-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"4a12eace-a85b-44ed-9423-69d742476899","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"c27aa950-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/4a12eace-a85b-44ed-9423-69d742476899 204 36ms","method":"DELETE","requestID":"c27aa950-50eb-11ef-8434-2f6d198c7397","responseTime":36,"status":204,"url":"/peerconnections/4a12eace-a85b-44ed-9423-69d742476899"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1254954d-61e4-410e-8620-48258e11d985"},"level":"info","message":"Successfully finished experiment","requestID":"860d6ec2c9aa168a0366299fcddb1a7c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c283aa00-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbbcb9bb4-5a50-43e2-8cab-af45c740d981","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7875abf5-753e-4fbe-94ce-6f5c98685ad4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.276715} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.837339,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c283aa00-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981","object_type":"device","rebac_allow":false,"scope_allow":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":"c283aa00-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c283aa00-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981/signaling 200 11ms","method":"POST","requestID":"c283aa00-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/bbcb9bb4-5a50-43e2-8cab-af45c740d981/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1254954d-61e4-410e-8620-48258e11d985': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1254954d-61e4-410e-8620-48258e11d985","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"af1d7a78-f719-4f2c-a4ab-9a3ffd2452c3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.2856224} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c285cce0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"df808640-4d57-4929-abc7-03651fa46e9f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.2861352} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"860d6ec2c9aa168a0366299fcddb1a7c","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa07277bc-502f-4d6b-b2e4-75c33cfa6503","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e8f49de-533c-4f8a-a948-d09139d72d77","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.292712} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.698086,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c285cce0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503","object_type":"device","rebac_allow":false,"scope_allow":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":"c285cce0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c285cce0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503/signaling 200 12ms","method":"POST","requestID":"c285cce0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/1254954d-61e4-410e-8620-48258e11d985","requestID":"860d6ec2c9aa168a0366299fcddb1a7c"} gateway-1 | {"time_local":"02/Aug/2024:16:24:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/1254954d-61e4-410e-8620-48258e11d985 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":"860d6ec2c9aa168a0366299fcddb1a7c"} gateway-1 | {"time_local":"02/Aug/2024:16:24:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1867","request_time":"0.624","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"eb2c1a84d2a92b69006a79602002d8fc"} gateway-1 | {"time_local":"02/Aug/2024:16:24:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1866","request_time":"0.637","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"6cd0d7ab627d19b71743dab9fcc34d27"} experiment-1 | {"level":"info","message":"DELETE /experiments/1254954d-61e4-410e-8620-48258e11d985 204 162ms","method":"DELETE","requestID":"860d6ec2c9aa168a0366299fcddb1a7c","responseTime":162,"status":204,"url":"/experiments/1254954d-61e4-410e-8620-48258e11d985"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"5b5e921c6ba9e880a2a8f2b8c5f9bc83","responseTime":132,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24:58 +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":"5b5e921c6ba9e880a2a8f2b8c5f9bc83"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 131ms","method":"POST","requestID":"877836267b02d4ba35c17e6abd304798","responseTime":131,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:24:58 +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":"877836267b02d4ba35c17e6abd304798"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE","level":"info","message":"auth send jwt","requestID":"2a1572a2f47b405d1ef7ffe45fc7971e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2a1572a2f47b405d1ef7ffe45fc7971e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a07277bc-502f-4d6b-b2e4-75c33cfa6503' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"2a1572a2f47b405d1ef7ffe45fc7971e"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.017281,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"2a1572a2f47b405d1ef7ffe45fc7971e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615898,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2a1572a2f47b405d1ef7ffe45fc7971e","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/bbcb9bb4-5a50-43e2-8cab-af45c740d981' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d077e0b-06aa-455f-9f62-854e41885a7a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"47bcba06-559a-43e3-8448-4106cc8f48ca","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.391874} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2a1572a2f47b405d1ef7ffe45fc7971e","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a51e6332-b1e1-42c3-bf66-5d682c396af8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.3981237} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"2a1572a2f47b405d1ef7ffe45fc7971e","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d077e0b-06aa-455f-9f62-854e41885a7a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"1d5f013d-51dc-4f56-9840-7dacdbd8a90a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.4098933} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1c5a448c-8a9e-45f1-b648-26c534bfdad0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.4100692} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"2a1572a2f47b405d1ef7ffe45fc7971e","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d077e0b-06aa-455f-9f62-854e41885a7a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d077e0b-06aa-455f-9f62-854e41885a7a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:58.409876734Z"}]},"request_id":"5fba3468-5d71-474c-8ef8-1ffb3bc64d58","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.4152853} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2a1572a2f47b405d1ef7ffe45fc7971e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2a1572a2f47b405d1ef7ffe45fc7971e"} gateway-1 | {"time_local":"02/Aug/2024:16:24:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2a1572a2f47b405d1ef7ffe45fc7971e"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"2a1572a2f47b405d1ef7ffe45fc7971e","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE","level":"info","message":"auth send jwt","requestID":"404d7bf3345a6a53e623ca2c909fe961"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"404d7bf3345a6a53e623ca2c909fe961","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"404d7bf3345a6a53e623ca2c909fe961"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.750733,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"404d7bf3345a6a53e623ca2c909fe961","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615898,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"404d7bf3345a6a53e623ca2c909fe961","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa35406d9-15a7-48dd-83a7-9e4ea1aeae72","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"95b1ebbd-d40a-4009-af94-9c2e5b9ea2ac","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.4403825} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"404d7bf3345a6a53e623ca2c909fe961","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9163dc88-9e16-4649-ad8b-c1e55268fc17","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.4463587} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"404d7bf3345a6a53e623ca2c909fe961","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa35406d9-15a7-48dd-83a7-9e4ea1aeae72","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"3e05051c-a030-4c00-ac6d-039413ec56a1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.4627833} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6882510a-8da2-4380-817d-6bdc005ac4e1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.4630756} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"404d7bf3345a6a53e623ca2c909fe961","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa35406d9-15a7-48dd-83a7-9e4ea1aeae72","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa35406d9-15a7-48dd-83a7-9e4ea1aeae72","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:58.462766669Z"}]},"request_id":"66c467e6-67eb-4eb6-9ec7-ef203455533e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.468075} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"404d7bf3345a6a53e623ca2c909fe961","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"404d7bf3345a6a53e623ca2c909fe961"} gateway-1 | {"time_local":"02/Aug/2024:16:24:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"404d7bf3345a6a53e623ca2c909fe961"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"404d7bf3345a6a53e623ca2c909fe961","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE","level":"info","message":"auth send jwt","requestID":"1ce9331e49e8f63da4fd3800ceaa46fd"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1ce9331e49e8f63da4fd3800ceaa46fd","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1ce9331e49e8f63da4fd3800ceaa46fd"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.773135,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1ce9331e49e8f63da4fd3800ceaa46fd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615898,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1ce9331e49e8f63da4fd3800ceaa46fd","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F755deefe-3da5-48b5-a1d8-43aa4bd5b1c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"826b8dcd-f46e-4721-9e27-badf88d55860","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.4971302} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1ce9331e49e8f63da4fd3800ceaa46fd","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2023c12f-8917-4d39-95ad-8fe2fb1c6bca","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.5035026} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"1ce9331e49e8f63da4fd3800ceaa46fd","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F755deefe-3da5-48b5-a1d8-43aa4bd5b1c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"76ebc4c3-374b-4a6f-a368-0189a4e9cacd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.5156102} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"88927100-bc6d-4c9a-a852-9185ab96b69b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.5156803} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"1ce9331e49e8f63da4fd3800ceaa46fd","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F755deefe-3da5-48b5-a1d8-43aa4bd5b1c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F755deefe-3da5-48b5-a1d8-43aa4bd5b1c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:58.515595137Z"}]},"request_id":"44e657cf-5e7e-4fb2-9f8b-d8558fa7807f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.5198} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1ce9331e49e8f63da4fd3800ceaa46fd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1ce9331e49e8f63da4fd3800ceaa46fd"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"1ce9331e49e8f63da4fd3800ceaa46fd","responseTime":46,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:24:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1ce9331e49e8f63da4fd3800ceaa46fd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE","level":"info","message":"auth send jwt","requestID":"33488a85c50b0aed9777bea0e1f2ebb5"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"33488a85c50b0aed9777bea0e1f2ebb5","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"33488a85c50b0aed9777bea0e1f2ebb5"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.684808,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"33488a85c50b0aed9777bea0e1f2ebb5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615898,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"33488a85c50b0aed9777bea0e1f2ebb5","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F335d81ac-b1aa-4a16-8766-54800427c196","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"339e1765-6a0d-46d5-a8ec-64155a8f7e87","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.553212} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"33488a85c50b0aed9777bea0e1f2ebb5","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d90cff80-21b6-4afb-a69b-9ad7ee4ec98f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.5584798} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"33488a85c50b0aed9777bea0e1f2ebb5","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F335d81ac-b1aa-4a16-8766-54800427c196","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"c4538a37-5ca5-435a-b967-696ef63cbf87","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.5772746} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bbbc10af-9e5b-463b-9f9f-be206c13dae3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.5772955} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"33488a85c50b0aed9777bea0e1f2ebb5","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F335d81ac-b1aa-4a16-8766-54800427c196","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F335d81ac-b1aa-4a16-8766-54800427c196","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:58.577256678Z"}]},"request_id":"6ac8ef1b-40ba-4280-9878-ad8d7efc89fc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.5822651} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"33488a85c50b0aed9777bea0e1f2ebb5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"33488a85c50b0aed9777bea0e1f2ebb5"} gateway-1 | {"time_local":"02/Aug/2024:16:24:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"33488a85c50b0aed9777bea0e1f2ebb5"} device-1 | {"level":"info","message":"POST /devices? 201 57ms","method":"POST","requestID":"33488a85c50b0aed9777bea0e1f2ebb5","responseTime":57,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE","level":"info","message":"auth send jwt","requestID":"880459dbb39150723f64c5807f34f95f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"880459dbb39150723f64c5807f34f95f","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"880459dbb39150723f64c5807f34f95f"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.401576,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"880459dbb39150723f64c5807f34f95f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615898,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"880459dbb39150723f64c5807f34f95f","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faad19f81-7cce-4910-9802-07ccf751874f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9a005da5-ee94-41b3-a6e8-9cd045be2451","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.60986} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"880459dbb39150723f64c5807f34f95f","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ceea7665-85f1-4653-8fd4-e4d3c4678324","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.6173222} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"880459dbb39150723f64c5807f34f95f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faad19f81-7cce-4910-9802-07ccf751874f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"c7acb52c-1ed9-47b6-9b9a-d6bc06cb2a41","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.6304824} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3ab36890-73b2-4fe0-8443-6554a5642762","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.6308234} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"880459dbb39150723f64c5807f34f95f","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faad19f81-7cce-4910-9802-07ccf751874f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faad19f81-7cce-4910-9802-07ccf751874f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:58.630464268Z"}]},"request_id":"5085bc8a-37b7-42bb-99d4-e1135aadbda0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.6370437} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"880459dbb39150723f64c5807f34f95f","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"880459dbb39150723f64c5807f34f95f"} gateway-1 | {"time_local":"02/Aug/2024:16:24:58 +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":"880459dbb39150723f64c5807f34f95f"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"880459dbb39150723f64c5807f34f95f","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE","level":"info","message":"auth send jwt","requestID":"3e107e5e0d6ceea6ffd0c5f5fba8b725"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3e107e5e0d6ceea6ffd0c5f5fba8b725","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3e107e5e0d6ceea6ffd0c5f5fba8b725"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.35231,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"3e107e5e0d6ceea6ffd0c5f5fba8b725","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615898,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3e107e5e0d6ceea6ffd0c5f5fba8b725","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9aa5fcb-fdb3-4914-9546-bc16f0481f83","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bb06c282-eee3-4057-9a5a-aa8e1f10978c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.670701} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3e107e5e0d6ceea6ffd0c5f5fba8b725","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a605816e-191c-4908-9c4b-23730b5b0227","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.6780288} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"3e107e5e0d6ceea6ffd0c5f5fba8b725","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9aa5fcb-fdb3-4914-9546-bc16f0481f83","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"4ccae68d-c34c-4813-b1ea-839be902985f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.6967673} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7f9a7ae8-7121-4ff6-8774-b15d42febaf5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.6969018} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"3e107e5e0d6ceea6ffd0c5f5fba8b725","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9aa5fcb-fdb3-4914-9546-bc16f0481f83","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9aa5fcb-fdb3-4914-9546-bc16f0481f83","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:58.696752963Z"}]},"request_id":"4b8ed2b8-0e67-4c00-b537-5a0a5f3b8d9b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.7033126} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3e107e5e0d6ceea6ffd0c5f5fba8b725","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3e107e5e0d6ceea6ffd0c5f5fba8b725"} gateway-1 | {"time_local":"02/Aug/2024:16:24:58 +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":"3e107e5e0d6ceea6ffd0c5f5fba8b725"} device-1 | {"level":"info","message":"POST /devices? 201 60ms","method":"POST","requestID":"3e107e5e0d6ceea6ffd0c5f5fba8b725","responseTime":60,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE","level":"info","message":"auth send jwt","requestID":"4e269bd8a5abb952c7ef9b085a392eab"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4e269bd8a5abb952c7ef9b085a392eab","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4e269bd8a5abb952c7ef9b085a392eab"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.725088,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"4e269bd8a5abb952c7ef9b085a392eab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615898,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4e269bd8a5abb952c7ef9b085a392eab","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F22d9992d-fb4b-4c69-aacd-4d8da1817dc7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f592dca3-977f-46ed-847b-45f6f50d0fb2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.7345316} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"4e269bd8a5abb952c7ef9b085a392eab","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7e8c8027-95e0-4c21-9501-0bad27dedbb9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.7416945} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"4e269bd8a5abb952c7ef9b085a392eab","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F22d9992d-fb4b-4c69-aacd-4d8da1817dc7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"9e510815-cf87-4ce6-bf09-b22fca184764","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.7552507} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a1d96057-2903-432b-a9ee-001cd1493a34","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.755335} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"4e269bd8a5abb952c7ef9b085a392eab","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F22d9992d-fb4b-4c69-aacd-4d8da1817dc7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F22d9992d-fb4b-4c69-aacd-4d8da1817dc7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:58.755235004Z"}]},"request_id":"53d60b1c-fb5b-43bf-86ff-fbfccd30b3fa","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.7622979} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4e269bd8a5abb952c7ef9b085a392eab","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4e269bd8a5abb952c7ef9b085a392eab"} gateway-1 | {"time_local":"02/Aug/2024:16:24:58 +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":"4e269bd8a5abb952c7ef9b085a392eab"} device-1 | {"level":"info","message":"POST /devices? 201 53ms","method":"POST","requestID":"4e269bd8a5abb952c7ef9b085a392eab","responseTime":53,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE","level":"info","message":"auth send jwt","requestID":"35695efd7139f5a7aad2c2eb7d31d076"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"35695efd7139f5a7aad2c2eb7d31d076","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"35695efd7139f5a7aad2c2eb7d31d076"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.282728,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"35695efd7139f5a7aad2c2eb7d31d076","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615898,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"35695efd7139f5a7aad2c2eb7d31d076","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1c884adf-23eb-4798-9010-5e42986f3bfd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1a44fcce-edac-4bd1-a282-2eb9ecb0cfae","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.7934618} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"35695efd7139f5a7aad2c2eb7d31d076","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"debfc475-76c2-4a7e-b620-a2a3177e398f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.8008692} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"35695efd7139f5a7aad2c2eb7d31d076","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1c884adf-23eb-4798-9010-5e42986f3bfd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"d23e204a-440a-4d7e-ac67-0866d74ac2a9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.8191826} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2f46fbc5-63d9-4dc7-91a6-039140ae48c1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.8193145} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"35695efd7139f5a7aad2c2eb7d31d076","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1c884adf-23eb-4798-9010-5e42986f3bfd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1c884adf-23eb-4798-9010-5e42986f3bfd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:58.819163666Z"}]},"request_id":"d0696b93-28e1-471e-94ab-e7441693a7ed","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.8263865} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"35695efd7139f5a7aad2c2eb7d31d076","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"35695efd7139f5a7aad2c2eb7d31d076"} gateway-1 | {"time_local":"02/Aug/2024:16:24:58 +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":"35695efd7139f5a7aad2c2eb7d31d076"} device-1 | {"level":"info","message":"POST /devices? 201 59ms","method":"POST","requestID":"35695efd7139f5a7aad2c2eb7d31d076","responseTime":59,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE","level":"info","message":"auth send jwt","requestID":"0699d084341d200c5742b27c3cb36a08"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0699d084341d200c5742b27c3cb36a08","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0699d084341d200c5742b27c3cb36a08"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.376069,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0699d084341d200c5742b27c3cb36a08","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615898,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0699d084341d200c5742b27c3cb36a08","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F32d1bd9b-f49f-4caa-a0d4-eaa21c966e00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"92b0d344-22a9-4ca9-b8cd-ce99654596a2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.8589904} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0699d084341d200c5742b27c3cb36a08","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"466cbaed-fa54-4bdf-abb3-2e794bf48d9a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.8666599} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"0699d084341d200c5742b27c3cb36a08","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F32d1bd9b-f49f-4caa-a0d4-eaa21c966e00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"aec29730-2ffe-473d-afaf-829c32c1f9bc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.8806708} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"05726b73-93a0-4b11-a8b2-ce4a20cd3c4b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.881197} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"0699d084341d200c5742b27c3cb36a08","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F32d1bd9b-f49f-4caa-a0d4-eaa21c966e00","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F32d1bd9b-f49f-4caa-a0d4-eaa21c966e00","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:58.880635281Z"}]},"request_id":"959d5fb0-9a0f-489b-9377-94246bea5e85","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.8885522} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0699d084341d200c5742b27c3cb36a08","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0699d084341d200c5742b27c3cb36a08"} gateway-1 | {"time_local":"02/Aug/2024:16:24:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0699d084341d200c5742b27c3cb36a08"} device-1 | {"level":"info","message":"POST /devices? 201 56ms","method":"POST","requestID":"0699d084341d200c5742b27c3cb36a08","responseTime":56,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE","level":"info","message":"auth send jwt","requestID":"6c8467df411574cb9700e1daf81464e0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6c8467df411574cb9700e1daf81464e0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6c8467df411574cb9700e1daf81464e0"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.173721,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"6c8467df411574cb9700e1daf81464e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615898,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6c8467df411574cb9700e1daf81464e0","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bc4fbb8-d3ae-40dd-ac42-dc20d727bd50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2c8638d3-dd2d-4054-9a93-4c4c30b1b0be","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.9217603} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6c8467df411574cb9700e1daf81464e0","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"84a20c8d-270f-40ce-b7d6-0df50036a6c7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.9267497} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"6c8467df411574cb9700e1daf81464e0","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bc4fbb8-d3ae-40dd-ac42-dc20d727bd50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"80426004-65e7-4a53-9d6c-027703014b0e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.9370732} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ff5b6d5a-ec11-4817-b9e7-c59a9338176e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.9374523} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"6c8467df411574cb9700e1daf81464e0","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bc4fbb8-d3ae-40dd-ac42-dc20d727bd50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bc4fbb8-d3ae-40dd-ac42-dc20d727bd50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:58.937037373Z"}]},"request_id":"11768653-4fda-4a53-8f33-2c7a63628e73","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.9420516} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6c8467df411574cb9700e1daf81464e0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6c8467df411574cb9700e1daf81464e0"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"6c8467df411574cb9700e1daf81464e0","responseTime":47,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:24:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"278","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6c8467df411574cb9700e1daf81464e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE","level":"info","message":"auth send jwt","requestID":"3fededd3aee34ada2f5eaf2221d19126"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3fededd3aee34ada2f5eaf2221d19126","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3fededd3aee34ada2f5eaf2221d19126"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.034991,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"3fededd3aee34ada2f5eaf2221d19126","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615898,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OH0.pIR4bfIHd-X2KLz4HsYeJJ8lqCevZYwxHjMuqEWinyE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3fededd3aee34ada2f5eaf2221d19126","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8a1d5066-de5e-470c-89ff-e189843a1eff","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"20fe4031-ef0a-4102-aa23-4be86ee32769","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.9779103} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3fededd3aee34ada2f5eaf2221d19126","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"941222da-f77f-4e82-a113-ffb5c2d82501","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.9835238} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"3fededd3aee34ada2f5eaf2221d19126","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8a1d5066-de5e-470c-89ff-e189843a1eff","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"23051034-b2d5-4868-ad5e-46298802608f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.9944997} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"575a5ea1-feff-4c30-bb49-82ee90dc7b38","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.9946268} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"3fededd3aee34ada2f5eaf2221d19126","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8a1d5066-de5e-470c-89ff-e189843a1eff","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8a1d5066-de5e-470c-89ff-e189843a1eff","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:58.994480452Z"}]},"request_id":"264c31c7-9e7d-478d-8bdc-d3c03c10f428","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615898.9994035} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3fededd3aee34ada2f5eaf2221d19126","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3fededd3aee34ada2f5eaf2221d19126"} gateway-1 | {"time_local":"02/Aug/2024:16:24:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1069","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3fededd3aee34ada2f5eaf2221d19126"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"3fededd3aee34ada2f5eaf2221d19126","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A","level":"info","message":"auth send jwt","requestID":"439a4ea4b9049b08ac9945a5d71078f0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"439a4ea4b9049b08ac9945a5d71078f0","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"439a4ea4b9049b08ac9945a5d71078f0"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.13386,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"439a4ea4b9049b08ac9945a5d71078f0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"439a4ea4b9049b08ac9945a5d71078f0","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393af897-7dbf-4144-8915-24edfcfe28b8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"71d2db1b-9835-4320-b4c1-63a8fd5c179b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.029185} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"439a4ea4b9049b08ac9945a5d71078f0","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0c6164f0-370b-423f-a321-263d498643ad","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.0346627} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"439a4ea4b9049b08ac9945a5d71078f0","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393af897-7dbf-4144-8915-24edfcfe28b8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"dbe42a06-dae2-4557-821e-ca99d1a65170","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.0449} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"88b959dd-0a3d-4b73-bb04-b1eef1ce3bb0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.0452902} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"439a4ea4b9049b08ac9945a5d71078f0","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393af897-7dbf-4144-8915-24edfcfe28b8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393af897-7dbf-4144-8915-24edfcfe28b8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:59.044860838Z"}]},"request_id":"4fc87865-7bdb-4dcd-9529-75616259a677","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.051039} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"439a4ea4b9049b08ac9945a5d71078f0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"439a4ea4b9049b08ac9945a5d71078f0"} gateway-1 | {"time_local":"02/Aug/2024:16:24:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1347","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"439a4ea4b9049b08ac9945a5d71078f0"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"439a4ea4b9049b08ac9945a5d71078f0","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A","level":"info","message":"auth send jwt","requestID":"547df6fdb2db6e96b4173fb5d1a2d5df"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"547df6fdb2db6e96b4173fb5d1a2d5df","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"547df6fdb2db6e96b4173fb5d1a2d5df"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.128058,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"547df6fdb2db6e96b4173fb5d1a2d5df","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"547df6fdb2db6e96b4173fb5d1a2d5df","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F835e6702-9041-4a7e-8e98-10f1408b6ff4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2d1e89f8-e2f7-420a-9da3-7b6afaf34e12","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.0851724} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"547df6fdb2db6e96b4173fb5d1a2d5df","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"03b3ac72-2185-4190-b678-22c6f12297f1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.0906348} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"547df6fdb2db6e96b4173fb5d1a2d5df","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F835e6702-9041-4a7e-8e98-10f1408b6ff4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"8484ec29-ed34-4d54-8ad2-b31b7f62225e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.1013117} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f5bd565b-b134-42ae-99ff-2b595d13e5ce","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.1016057} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"547df6fdb2db6e96b4173fb5d1a2d5df","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F835e6702-9041-4a7e-8e98-10f1408b6ff4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F835e6702-9041-4a7e-8e98-10f1408b6ff4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:59.101285423Z"}]},"request_id":"9379465d-4e7c-4527-895b-e6802fff3656","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.107397} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"547df6fdb2db6e96b4173fb5d1a2d5df","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"547df6fdb2db6e96b4173fb5d1a2d5df"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"547df6fdb2db6e96b4173fb5d1a2d5df","responseTime":51,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:24:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1070","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"547df6fdb2db6e96b4173fb5d1a2d5df"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A","level":"info","message":"auth send jwt","requestID":"092d5a9cf60e5b80d1e5d9be123f4471"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"092d5a9cf60e5b80d1e5d9be123f4471","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"092d5a9cf60e5b80d1e5d9be123f4471"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.332032,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8a1d5066-de5e-470c-89ff-e189843a1eff","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"092d5a9cf60e5b80d1e5d9be123f4471","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8a1d5066-de5e-470c-89ff-e189843a1eff","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"092d5a9cf60e5b80d1e5d9be123f4471","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8a1d5066-de5e-470c-89ff-e189843a1eff","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8a1d5066-de5e-470c-89ff-e189843a1eff","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:58.994480452Z"}]},"request_id":"23fb31d6-175a-4fa5-b7a1-23e486633b3a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.1379545} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"092d5a9cf60e5b80d1e5d9be123f4471","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4c2cc704-6685-4293-a6ca-5cf89ce88c3f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.1473823} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"092d5a9cf60e5b80d1e5d9be123f4471","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8a1d5066-de5e-470c-89ff-e189843a1eff","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8a1d5066-de5e-470c-89ff-e189843a1eff","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:58.994480452Z"}]},"request_id":"2ffc0fe5-a6ec-40b1-9a1c-7a4ff60f9812","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.1594765} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"092d5a9cf60e5b80d1e5d9be123f4471","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"092d5a9cf60e5b80d1e5d9be123f4471"} gateway-1 | {"time_local":"02/Aug/2024:16:24:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8a1d5066-de5e-470c-89ff-e189843a1eff? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"092d5a9cf60e5b80d1e5d9be123f4471"} device-1 | {"level":"info","message":"PATCH /devices/8a1d5066-de5e-470c-89ff-e189843a1eff? 200 43ms","method":"PATCH","requestID":"092d5a9cf60e5b80d1e5d9be123f4471","responseTime":43,"status":200,"url":"/devices/8a1d5066-de5e-470c-89ff-e189843a1eff?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A","level":"info","message":"auth send jwt","requestID":"025c353068b3194d8c5115d089c13982"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"025c353068b3194d8c5115d089c13982","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"025c353068b3194d8c5115d089c13982"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.193579,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/393af897-7dbf-4144-8915-24edfcfe28b8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"025c353068b3194d8c5115d089c13982","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/393af897-7dbf-4144-8915-24edfcfe28b8","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"025c353068b3194d8c5115d089c13982","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393af897-7dbf-4144-8915-24edfcfe28b8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393af897-7dbf-4144-8915-24edfcfe28b8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:59.044860838Z"}]},"request_id":"e0ca4502-971a-4ac6-b143-507d37423cab","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.1872275} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"025c353068b3194d8c5115d089c13982","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c7a2dbd3-be3c-423b-9489-4bf3c7ab3200","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.195039} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"025c353068b3194d8c5115d089c13982","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393af897-7dbf-4144-8915-24edfcfe28b8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393af897-7dbf-4144-8915-24edfcfe28b8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:59.044860838Z"}]},"request_id":"03eef02f-500a-45e0-b1f6-c11646484d56","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.20592} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"025c353068b3194d8c5115d089c13982","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"025c353068b3194d8c5115d089c13982"} gateway-1 | {"time_local":"02/Aug/2024:16:24:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/393af897-7dbf-4144-8915-24edfcfe28b8? HTTP/1.1","status": "200","body_bytes_sent":"1491","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"025c353068b3194d8c5115d089c13982"} device-1 | {"level":"info","message":"PATCH /devices/393af897-7dbf-4144-8915-24edfcfe28b8? 200 37ms","method":"PATCH","requestID":"025c353068b3194d8c5115d089c13982","responseTime":37,"status":200,"url":"/devices/393af897-7dbf-4144-8915-24edfcfe28b8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A","level":"info","message":"auth send jwt","requestID":"19e7308930ff2337e9d4963ee9b48962"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"19e7308930ff2337e9d4963ee9b48962","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"19e7308930ff2337e9d4963ee9b48962"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.460897,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/835e6702-9041-4a7e-8e98-10f1408b6ff4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"19e7308930ff2337e9d4963ee9b48962","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/835e6702-9041-4a7e-8e98-10f1408b6ff4","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"19e7308930ff2337e9d4963ee9b48962","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F835e6702-9041-4a7e-8e98-10f1408b6ff4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F835e6702-9041-4a7e-8e98-10f1408b6ff4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:59.101285423Z"}]},"request_id":"b1744dab-2eef-4b65-88dd-3c53d8ff0d08","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.2332423} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"19e7308930ff2337e9d4963ee9b48962","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"191a7b74-04a1-419b-84ef-0fcbcc3082be","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.2407732} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"19e7308930ff2337e9d4963ee9b48962","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F835e6702-9041-4a7e-8e98-10f1408b6ff4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F835e6702-9041-4a7e-8e98-10f1408b6ff4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:59.101285423Z"}]},"request_id":"c14fa58d-b3f0-40ca-9cbe-95882170d2c1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.2584321} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"19e7308930ff2337e9d4963ee9b48962","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"19e7308930ff2337e9d4963ee9b48962"} gateway-1 | {"time_local":"02/Aug/2024:16:24:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/835e6702-9041-4a7e-8e98-10f1408b6ff4? HTTP/1.1","status": "200","body_bytes_sent":"1142","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"19e7308930ff2337e9d4963ee9b48962"} device-1 | {"level":"info","message":"PATCH /devices/835e6702-9041-4a7e-8e98-10f1408b6ff4? 200 44ms","method":"PATCH","requestID":"19e7308930ff2337e9d4963ee9b48962","responseTime":44,"status":200,"url":"/devices/835e6702-9041-4a7e-8e98-10f1408b6ff4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A","level":"info","message":"auth send jwt","requestID":"bbe93c8d9c700ce747a7b6c531fac19c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bbe93c8d9c700ce747a7b6c531fac19c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bbe93c8d9c700ce747a7b6c531fac19c"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.308947,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8a1d5066-de5e-470c-89ff-e189843a1eff","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bbe93c8d9c700ce747a7b6c531fac19c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8a1d5066-de5e-470c-89ff-e189843a1eff","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bbe93c8d9c700ce747a7b6c531fac19c","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8a1d5066-de5e-470c-89ff-e189843a1eff","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8a1d5066-de5e-470c-89ff-e189843a1eff","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:58.994480452Z"}]},"request_id":"ffdcbc9a-74a7-4568-ae91-5b756dd1b37e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.2841344} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bbe93c8d9c700ce747a7b6c531fac19c","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.077554,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:37522","level":"info","msg":"Received request.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.976205,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d077e0b-06aa-455f-9f62-854e41885a7a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bbe93c8d9c700ce747a7b6c531fac19c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/5d077e0b-06aa-455f-9f62-854e41885a7a","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"bbe93c8d9c700ce747a7b6c531fac19c","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a35406d9-15a7-48dd-83a7-9e4ea1aeae72","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bbe93c8d9c700ce747a7b6c531fac19c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a35406d9-15a7-48dd-83a7-9e4ea1aeae72","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"bbe93c8d9c700ce747a7b6c531fac19c","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37522","level":"info","msg":"Sent response.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.105188,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/755deefe-3da5-48b5-a1d8-43aa4bd5b1c2","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bbe93c8d9c700ce747a7b6c531fac19c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/755deefe-3da5-48b5-a1d8-43aa4bd5b1c2","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"bbe93c8d9c700ce747a7b6c531fac19c","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37534","level":"info","msg":"Received request.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:37534","level":"info","msg":"Sent response.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.711487,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/393af897-7dbf-4144-8915-24edfcfe28b8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bbe93c8d9c700ce747a7b6c531fac19c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/393af897-7dbf-4144-8915-24edfcfe28b8","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"bbe93c8d9c700ce747a7b6c531fac19c","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bbe93c8d9c700ce747a7b6c531fac19c"} gateway-1 | {"time_local":"02/Aug/2024:16:24:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8a1d5066-de5e-470c-89ff-e189843a1eff? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bbe93c8d9c700ce747a7b6c531fac19c"} device-1 | {"level":"info","message":"GET /devices/8a1d5066-de5e-470c-89ff-e189843a1eff? 200 44ms","method":"GET","requestID":"bbe93c8d9c700ce747a7b6c531fac19c","responseTime":44,"status":200,"url":"/devices/8a1d5066-de5e-470c-89ff-e189843a1eff?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A","level":"info","message":"auth send jwt","requestID":"1dba3bedfe00e8f2c6d91503ee9b95c9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1dba3bedfe00e8f2c6d91503ee9b95c9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1dba3bedfe00e8f2c6d91503ee9b95c9"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.25941,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/393af897-7dbf-4144-8915-24edfcfe28b8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1dba3bedfe00e8f2c6d91503ee9b95c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/393af897-7dbf-4144-8915-24edfcfe28b8","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1dba3bedfe00e8f2c6d91503ee9b95c9","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393af897-7dbf-4144-8915-24edfcfe28b8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393af897-7dbf-4144-8915-24edfcfe28b8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:59.044860838Z"}]},"request_id":"8a61728c-51da-4e14-8eca-1a97fee8ba71","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.3363352} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1dba3bedfe00e8f2c6d91503ee9b95c9","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.351685,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.075139,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:37522","level":"info","msg":"Received request.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:37522","level":"info","msg":"Sent response.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.065923,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:37534","level":"info","msg":"Received request.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:37534","level":"info","msg":"Sent response.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.078227,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/335d81ac-b1aa-4a16-8766-54800427c196","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1dba3bedfe00e8f2c6d91503ee9b95c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/335d81ac-b1aa-4a16-8766-54800427c196","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"1dba3bedfe00e8f2c6d91503ee9b95c9","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aad19f81-7cce-4910-9802-07ccf751874f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1dba3bedfe00e8f2c6d91503ee9b95c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/aad19f81-7cce-4910-9802-07ccf751874f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"1dba3bedfe00e8f2c6d91503ee9b95c9","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9aa5fcb-fdb3-4914-9546-bc16f0481f83","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1dba3bedfe00e8f2c6d91503ee9b95c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c9aa5fcb-fdb3-4914-9546-bc16f0481f83","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"1dba3bedfe00e8f2c6d91503ee9b95c9","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/22d9992d-fb4b-4c69-aacd-4d8da1817dc7","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1dba3bedfe00e8f2c6d91503ee9b95c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/22d9992d-fb4b-4c69-aacd-4d8da1817dc7","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"1dba3bedfe00e8f2c6d91503ee9b95c9","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:37544","level":"info","msg":"Received request.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.710372,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/835e6702-9041-4a7e-8e98-10f1408b6ff4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1dba3bedfe00e8f2c6d91503ee9b95c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/835e6702-9041-4a7e-8e98-10f1408b6ff4","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1dba3bedfe00e8f2c6d91503ee9b95c9","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37544","level":"info","msg":"Sent response.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.607293,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8a1d5066-de5e-470c-89ff-e189843a1eff","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1dba3bedfe00e8f2c6d91503ee9b95c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8a1d5066-de5e-470c-89ff-e189843a1eff","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"1dba3bedfe00e8f2c6d91503ee9b95c9","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1dba3bedfe00e8f2c6d91503ee9b95c9"} gateway-1 | {"time_local":"02/Aug/2024:16:24:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/393af897-7dbf-4144-8915-24edfcfe28b8? HTTP/1.1","status": "200","body_bytes_sent":"1491","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1dba3bedfe00e8f2c6d91503ee9b95c9"} device-1 | {"level":"info","message":"GET /devices/393af897-7dbf-4144-8915-24edfcfe28b8? 200 55ms","method":"GET","requestID":"1dba3bedfe00e8f2c6d91503ee9b95c9","responseTime":55,"status":200,"url":"/devices/393af897-7dbf-4144-8915-24edfcfe28b8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A","level":"info","message":"auth send jwt","requestID":"db8bb39909f0ad21b6a8ad1eb01fc030"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"db8bb39909f0ad21b6a8ad1eb01fc030","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"db8bb39909f0ad21b6a8ad1eb01fc030"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.293825,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/835e6702-9041-4a7e-8e98-10f1408b6ff4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db8bb39909f0ad21b6a8ad1eb01fc030","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/835e6702-9041-4a7e-8e98-10f1408b6ff4","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"db8bb39909f0ad21b6a8ad1eb01fc030","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F835e6702-9041-4a7e-8e98-10f1408b6ff4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F835e6702-9041-4a7e-8e98-10f1408b6ff4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:59.101285423Z"}]},"request_id":"84162433-76b0-4227-97cc-86a240fb414b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.3996222} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"db8bb39909f0ad21b6a8ad1eb01fc030","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.234419,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:37522","level":"info","msg":"Received request.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.269468,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:37522","level":"info","msg":"Sent response.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.659528,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:37534","level":"info","msg":"Received request.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1c884adf-23eb-4798-9010-5e42986f3bfd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db8bb39909f0ad21b6a8ad1eb01fc030","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1c884adf-23eb-4798-9010-5e42986f3bfd","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"db8bb39909f0ad21b6a8ad1eb01fc030","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/32d1bd9b-f49f-4caa-a0d4-eaa21c966e00","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db8bb39909f0ad21b6a8ad1eb01fc030","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/32d1bd9b-f49f-4caa-a0d4-eaa21c966e00","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"db8bb39909f0ad21b6a8ad1eb01fc030","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8bc4fbb8-d3ae-40dd-ac42-dc20d727bd50","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db8bb39909f0ad21b6a8ad1eb01fc030","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8bc4fbb8-d3ae-40dd-ac42-dc20d727bd50","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"db8bb39909f0ad21b6a8ad1eb01fc030","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37534","level":"info","msg":"Sent response.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.803627,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8a1d5066-de5e-470c-89ff-e189843a1eff","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db8bb39909f0ad21b6a8ad1eb01fc030","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8a1d5066-de5e-470c-89ff-e189843a1eff","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"db8bb39909f0ad21b6a8ad1eb01fc030","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"db8bb39909f0ad21b6a8ad1eb01fc030"} gateway-1 | {"time_local":"02/Aug/2024:16:24:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/835e6702-9041-4a7e-8e98-10f1408b6ff4? 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":"db8bb39909f0ad21b6a8ad1eb01fc030"} device-1 | {"level":"info","message":"GET /devices/835e6702-9041-4a7e-8e98-10f1408b6ff4? 200 42ms","method":"GET","requestID":"db8bb39909f0ad21b6a8ad1eb01fc030","responseTime":42,"status":200,"url":"/devices/835e6702-9041-4a7e-8e98-10f1408b6ff4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A","level":"info","message":"auth send jwt","requestID":"c9dabcb48ba3e4df47fb976b68c9df5f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c9dabcb48ba3e4df47fb976b68c9df5f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c9dabcb48ba3e4df47fb976b68c9df5f"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.486937,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c9dabcb48ba3e4df47fb976b68c9df5f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c9dabcb48ba3e4df47fb976b68c9df5f","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b4bc96b1-1da7-4f5f-bba7-a98c93849c3a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.464415} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c9dabcb48ba3e4df47fb976b68c9df5f","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"91c56f93-3a15-4267-a2a6-e6337501f0cd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.4720168} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c9dabcb48ba3e4df47fb976b68c9df5f","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"1f2b55f8-7a98-435c-9106-f6a1516fac07","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.4854643} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"648345b1-2529-4255-a0bb-195bef4d62bd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.4858499} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"c9dabcb48ba3e4df47fb976b68c9df5f","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:59.485432752Z"}]},"request_id":"b8df8441-c698-45e7-8494-29e5e317c2c5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.4941566} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c9dabcb48ba3e4df47fb976b68c9df5f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c9dabcb48ba3e4df47fb976b68c9df5f"} gateway-1 | {"time_local":"02/Aug/2024:16:24:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"284","request_time":"0.064","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c9dabcb48ba3e4df47fb976b68c9df5f"} device-1 | {"level":"info","message":"POST /devices? 201 59ms","method":"POST","requestID":"c9dabcb48ba3e4df47fb976b68c9df5f","responseTime":59,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A","level":"info","message":"auth send jwt","requestID":"2a29cd68dba7a6c20d851e4687ebab5a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2a29cd68dba7a6c20d851e4687ebab5a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2a29cd68dba7a6c20d851e4687ebab5a"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.349936,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"2a29cd68dba7a6c20d851e4687ebab5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2a29cd68dba7a6c20d851e4687ebab5a","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F560a539d-3a22-48cb-bc05-6685054c2073","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ce820143-ddbd-4a4e-b656-cd97e3bd7abb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.530115} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2a29cd68dba7a6c20d851e4687ebab5a","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ea94f55a-cb45-4d34-9efb-12fcc3c0c739","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.5377424} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"2a29cd68dba7a6c20d851e4687ebab5a","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F560a539d-3a22-48cb-bc05-6685054c2073","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"8e3d845a-82cd-4c09-8276-c6ad9f538e9e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.549892} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a3e601f5-40a4-413a-9d36-04dc76476360","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.5501785} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"2a29cd68dba7a6c20d851e4687ebab5a","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F560a539d-3a22-48cb-bc05-6685054c2073","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F560a539d-3a22-48cb-bc05-6685054c2073","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:59.549866474Z"}]},"request_id":"936fc945-db42-4795-91ed-aa3e09647973","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.5573199} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2a29cd68dba7a6c20d851e4687ebab5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2a29cd68dba7a6c20d851e4687ebab5a"} device-1 | {"level":"info","message":"POST /devices? 201 55ms","method":"POST","requestID":"2a29cd68dba7a6c20d851e4687ebab5a","responseTime":55,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:24:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"706","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2a29cd68dba7a6c20d851e4687ebab5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A","level":"info","message":"auth send jwt","requestID":"67a669ca7a4f1075d12b23034a2f92c8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"67a669ca7a4f1075d12b23034a2f92c8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"67a669ca7a4f1075d12b23034a2f92c8"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.151628,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:24:59Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"67a669ca7a4f1075d12b23034a2f92c8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615899,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTg5OX0.Gn4QWk45sSLUqKvU2ZEHC03b0TZkZwE8OgEXZ0WvC4A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"67a669ca7a4f1075d12b23034a2f92c8","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393e4ceb-04f3-4512-8417-a44c957e0255","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f9338f20-7e25-4629-ae8e-aa2de5bd7883","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.5989296} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"67a669ca7a4f1075d12b23034a2f92c8","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9ff08de4-8330-4f6f-aa7e-073863e81e03","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.6072752} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"67a669ca7a4f1075d12b23034a2f92c8","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393e4ceb-04f3-4512-8417-a44c957e0255","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"e9db1ff7-1184-4668-bf0a-34b7227d241a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.6191177} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d75349d5-5a1b-4f60-94ed-5209c9b9aa3d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.6193025} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"67a669ca7a4f1075d12b23034a2f92c8","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393e4ceb-04f3-4512-8417-a44c957e0255","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393e4ceb-04f3-4512-8417-a44c957e0255","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:59.619090436Z"}]},"request_id":"8fb7408c-afca-4c3e-8e03-01abf1dab88c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615899.6250381} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"67a669ca7a4f1075d12b23034a2f92c8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"67a669ca7a4f1075d12b23034a2f92c8"} gateway-1 | {"time_local":"02/Aug/2024:16:24:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.064","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"67a669ca7a4f1075d12b23034a2f92c8"} device-1 | {"level":"info","message":"POST /devices? 201 57ms","method":"POST","requestID":"67a669ca7a4f1075d12b23034a2f92c8","responseTime":57,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"910ea9aadf20b6deeea3348ae9f51077","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":"910ea9aadf20b6deeea3348ae9f51077","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/393e4ceb-04f3-4512-8417-a44c957e0255/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":"910ea9aadf20b6deeea3348ae9f51077"} device-1 | {"level":"info","message":"OPTIONS /devices/393e4ceb-04f3-4512-8417-a44c957e0255/websocket 200 1ms","method":"OPTIONS","requestID":"910ea9aadf20b6deeea3348ae9f51077","responseTime":1,"status":200,"url":"/devices/393e4ceb-04f3-4512-8417-a44c957e0255/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"33f4070112a79b5d9dfd0d63a4c54fac","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":"33f4070112a79b5d9dfd0d63a4c54fac","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377/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":"33f4070112a79b5d9dfd0d63a4c54fac"} device-1 | {"level":"info","message":"OPTIONS /devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377/websocket 200 1ms","method":"OPTIONS","requestID":"33f4070112a79b5d9dfd0d63a4c54fac","responseTime":1,"status":200,"url":"/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMX0.-z032W7RYYSxiK-TBpoWhQPLQV75BTpRfsDU5qKH_do","level":"info","message":"auth send jwt","requestID":"4569274714aba739ebab02adb6812b26"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"4569274714aba739ebab02adb6812b26","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4569274714aba739ebab02adb6812b26"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.028743,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:01Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMX0.-z032W7RYYSxiK-TBpoWhQPLQV75BTpRfsDU5qKH_do","level":"info","message":"auth send jwt","requestID":"2dea457c8cfbe6f9042b538e644f34a3"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"4569274714aba739ebab02adb6812b26","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615901,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMX0.-z032W7RYYSxiK-TBpoWhQPLQV75BTpRfsDU5qKH_do"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2dea457c8cfbe6f9042b538e644f34a3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2dea457c8cfbe6f9042b538e644f34a3","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4569274714aba739ebab02adb6812b26","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.914835,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"2dea457c8cfbe6f9042b538e644f34a3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615901,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMX0.-z032W7RYYSxiK-TBpoWhQPLQV75BTpRfsDU5qKH_do"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2dea457c8cfbe6f9042b538e644f34a3","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4569274714aba739ebab02adb6812b26"} gateway-1 | {"time_local":"02/Aug/2024:16:25:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/393e4ceb-04f3-4512-8417-a44c957e0255/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","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":"4569274714aba739ebab02adb6812b26"} device-1 | {"level":"info","message":"POST /devices/393e4ceb-04f3-4512-8417-a44c957e0255/websocket 200 18ms","method":"POST","requestID":"4569274714aba739ebab02adb6812b26","responseTime":18,"status":200,"url":"/devices/393e4ceb-04f3-4512-8417-a44c957e0255/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2dea457c8cfbe6f9042b538e644f34a3"} gateway-1 | {"time_local":"02/Aug/2024:16:25:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377/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":"2dea457c8cfbe6f9042b538e644f34a3"} device-1 | {"level":"info","message":"POST /devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377/websocket 200 24ms","method":"POST","requestID":"2dea457c8cfbe6f9042b538e644f34a3","responseTime":24,"status":200,"url":"/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d26b74fe9ad13c992200ab8f4dbae047","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":"d26b74fe9ad13c992200ab8f4dbae047","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/393e4ceb-04f3-4512-8417-a44c957e0255? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"d26b74fe9ad13c992200ab8f4dbae047"} device-1 | {"level":"info","message":"OPTIONS /devices/393e4ceb-04f3-4512-8417-a44c957e0255? 200 1ms","method":"OPTIONS","requestID":"d26b74fe9ad13c992200ab8f4dbae047","responseTime":1,"status":200,"url":"/devices/393e4ceb-04f3-4512-8417-a44c957e0255?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMX0.-z032W7RYYSxiK-TBpoWhQPLQV75BTpRfsDU5qKH_do","level":"info","message":"auth send jwt","requestID":"593de8c962a9d08dc2462ae1d37ceff6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"593de8c962a9d08dc2462ae1d37ceff6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"593de8c962a9d08dc2462ae1d37ceff6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d703490425961189f511fcb08859e559","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":"d703490425961189f511fcb08859e559","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"d703490425961189f511fcb08859e559"} device-1 | {"level":"info","message":"OPTIONS /devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377? 200 1ms","method":"OPTIONS","requestID":"d703490425961189f511fcb08859e559","responseTime":1,"status":200,"url":"/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.113895,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"593de8c962a9d08dc2462ae1d37ceff6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615901,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMX0.-z032W7RYYSxiK-TBpoWhQPLQV75BTpRfsDU5qKH_do"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"593de8c962a9d08dc2462ae1d37ceff6","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMX0.-z032W7RYYSxiK-TBpoWhQPLQV75BTpRfsDU5qKH_do","level":"info","message":"auth send jwt","requestID":"21ba7ee044abccb4a0567332d9f983c9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"21ba7ee044abccb4a0567332d9f983c9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"21ba7ee044abccb4a0567332d9f983c9"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393e4ceb-04f3-4512-8417-a44c957e0255","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393e4ceb-04f3-4512-8417-a44c957e0255","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:59.619090436Z"}]},"request_id":"8e322a73-e472-4a40-9350-8f4e9d233909","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615901.6944776} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"593de8c962a9d08dc2462ae1d37ceff6","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.125708,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"21ba7ee044abccb4a0567332d9f983c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615901,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMX0.-z032W7RYYSxiK-TBpoWhQPLQV75BTpRfsDU5qKH_do"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"21ba7ee044abccb4a0567332d9f983c9","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"47d79515-1de0-4ce8-9215-743b4b725f87","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615901.7020288} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"593de8c962a9d08dc2462ae1d37ceff6","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:59.485432752Z"}]},"request_id":"40dd7f4f-f567-4223-8c86-dc304c378543","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615901.7060828} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"21ba7ee044abccb4a0567332d9f983c9","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9710bf7e-1ccc-44fc-af93-9c20a7d73c07","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615901.7133112} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"21ba7ee044abccb4a0567332d9f983c9","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393e4ceb-04f3-4512-8417-a44c957e0255","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393e4ceb-04f3-4512-8417-a44c957e0255","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:59.619090436Z"}]},"request_id":"34e6981e-702c-4bce-951f-0198b5081b8f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615901.7208257} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"593de8c962a9d08dc2462ae1d37ceff6","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"593de8c962a9d08dc2462ae1d37ceff6"} gateway-1 | {"time_local":"02/Aug/2024:16:25:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/393e4ceb-04f3-4512-8417-a44c957e0255? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.047","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":"593de8c962a9d08dc2462ae1d37ceff6"} device-1 | {"level":"info","message":"PATCH /devices/393e4ceb-04f3-4512-8417-a44c957e0255? 200 42ms","method":"PATCH","requestID":"593de8c962a9d08dc2462ae1d37ceff6","responseTime":42,"status":200,"url":"/devices/393e4ceb-04f3-4512-8417-a44c957e0255?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:59.485432752Z"}]},"request_id":"9b0d136e-f7da-49e2-b4cc-8176098bcd59","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615901.7323446} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"21ba7ee044abccb4a0567332d9f983c9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"21ba7ee044abccb4a0567332d9f983c9"} gateway-1 | {"time_local":"02/Aug/2024:16:25:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377? HTTP/1.1","status": "200","body_bytes_sent":"845","request_time":"0.047","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":"21ba7ee044abccb4a0567332d9f983c9"} device-1 | {"level":"info","message":"PATCH /devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377? 200 43ms","method":"PATCH","requestID":"21ba7ee044abccb4a0567332d9f983c9","responseTime":43,"status":200,"url":"/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMX0.-z032W7RYYSxiK-TBpoWhQPLQV75BTpRfsDU5qKH_do","level":"info","message":"auth send jwt","requestID":"0738d7590436cd87349eda84e5fd7022"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0738d7590436cd87349eda84e5fd7022","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0738d7590436cd87349eda84e5fd7022"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.788059,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0738d7590436cd87349eda84e5fd7022","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615901,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMX0.-z032W7RYYSxiK-TBpoWhQPLQV75BTpRfsDU5qKH_do"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0738d7590436cd87349eda84e5fd7022","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393e4ceb-04f3-4512-8417-a44c957e0255","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393e4ceb-04f3-4512-8417-a44c957e0255","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:59.619090436Z"}]},"request_id":"f781b416-b1fd-4433-957a-bd3420bc4cf0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615901.7547314} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0738d7590436cd87349eda84e5fd7022","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0738d7590436cd87349eda84e5fd7022"} gateway-1 | {"time_local":"02/Aug/2024:16:25:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/393e4ceb-04f3-4512-8417-a44c957e0255? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0738d7590436cd87349eda84e5fd7022"} device-1 | {"level":"info","message":"GET /devices/393e4ceb-04f3-4512-8417-a44c957e0255? 200 14ms","method":"GET","requestID":"0738d7590436cd87349eda84e5fd7022","responseTime":14,"status":200,"url":"/devices/393e4ceb-04f3-4512-8417-a44c957e0255?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMX0.-z032W7RYYSxiK-TBpoWhQPLQV75BTpRfsDU5qKH_do","level":"info","message":"auth send jwt","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.959421,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b6cb0fe979b787ab2c5cdd46be5779ca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615901,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMX0.-z032W7RYYSxiK-TBpoWhQPLQV75BTpRfsDU5qKH_do"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812"},"level":"info","message":"Attempting to run experiment","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812"},"level":"info","message":"Attempting to book experiment","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812"},"level":"info","message":"Successfully booked experiment","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c4a02160-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c4a06f80-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.963804,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/560a539d-3a22-48cb-bc05-6685054c2073","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c4a02160-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/560a539d-3a22-48cb-bc05-6685054c2073","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615901,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMX0.-z032W7RYYSxiK-TBpoWhQPLQV75BTpRfsDU5qKH_do"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c4a02160-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.873272,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c4a06f80-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615901,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMX0.-z032W7RYYSxiK-TBpoWhQPLQV75BTpRfsDU5qKH_do"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c4a06f80-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F560a539d-3a22-48cb-bc05-6685054c2073","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F560a539d-3a22-48cb-bc05-6685054c2073","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:59.549866474Z"}]},"request_id":"453e4f18-f748-49b1-8de0-98956249329b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615901.8253667} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c4a02160-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393e4ceb-04f3-4512-8417-a44c957e0255","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393e4ceb-04f3-4512-8417-a44c957e0255","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:59.619090436Z"}]},"request_id":"f42531b3-3358-4626-9475-85c8904a818a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615901.8268833} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c4a06f80-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c4a06f80-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/393e4ceb-04f3-4512-8417-a44c957e0255? 200 17ms","method":"GET","requestID":"c4a06f80-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/393e4ceb-04f3-4512-8417-a44c957e0255?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.002995,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c4a02160-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615901,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMX0.-z032W7RYYSxiK-TBpoWhQPLQV75BTpRfsDU5qKH_do"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c4a02160-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c4a02160-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/560a539d-3a22-48cb-bc05-6685054c2073? 200 25ms","method":"GET","requestID":"c4a02160-50eb-11ef-8434-2f6d198c7397","responseTime":25,"status":200,"url":"/devices/560a539d-3a22-48cb-bc05-6685054c2073?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812"},"level":"info","message":"Setting up experiment","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812"},"level":"info","message":"Successfully locked booking for experiment","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812"},"level":"info","message":"Attempting to update booking for experiment","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812"},"level":"info","message":"Successfully updated booking for experiment","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812"},"level":"info","message":"Successfully set up experiment","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c4aca480-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c4acf2a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c4ad40c0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.274938,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:01Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812"},"level":"info","message":"Successfully running experiment","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c4aca480-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615901,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMX0.-z032W7RYYSxiK-TBpoWhQPLQV75BTpRfsDU5qKH_do"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"c4aca480-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.159319,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"client_addr":"127.0.0.1:37522","level":"info","msg":"Received request.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c4acf2a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615901,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMX0.-z032W7RYYSxiK-TBpoWhQPLQV75BTpRfsDU5qKH_do"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"c4acf2a0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37522","level":"info","msg":"Sent response.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.595497,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"034b4e4a-ec47-4d0a-84b2-293adbf3a3e8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615901.909118} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c4ad40c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","object_type":"device","rebac_allow":false,"scope_allow":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":"c4ad40c0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:59.485432752Z"}]},"request_id":"9dc18057-0839-413a-90a9-3a717b98185d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615901.91438} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"c4aca480-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393e4ceb-04f3-4512-8417-a44c957e0255","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393e4ceb-04f3-4512-8417-a44c957e0255","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:59.619090436Z"}]},"request_id":"b878e128-b599-4713-b394-267a45fdfdf0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615901.9188035} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c4ad40c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377/signaling 200 20ms","method":"POST","requestID":"c4ad40c0-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c4acf2a0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c4b11150-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c4aca480-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377? 200 31ms","method":"GET","requestID":"c4aca480-50eb-11ef-8434-2f6d198c7397","responseTime":31,"status":200,"url":"/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c4acf2a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/393e4ceb-04f3-4512-8417-a44c957e0255? 200 31ms","method":"GET","requestID":"c4acf2a0-50eb-11ef-8434-2f6d198c7397","responseTime":31,"status":200,"url":"/devices/393e4ceb-04f3-4512-8417-a44c957e0255?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393e4ceb-04f3-4512-8417-a44c957e0255","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"28ddeffe-62a4-4347-bd45-5fb1d6ddd889","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615901.9312837} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.155549,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c4b11150-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255","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":"c4b222c0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c4b11150-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:01Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c4b11150-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b9cb50ff-a971-4f3f-b530-aad4ad22af98","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615901.9387197} device-1 | {"level":"info","message":"POST /devices/393e4ceb-04f3-4512-8417-a44c957e0255/signaling 200 14ms","method":"POST","requestID":"c4b11150-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/393e4ceb-04f3-4512-8417-a44c957e0255/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.434651,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c4b222c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","object_type":"device","rebac_allow":false,"scope_allow":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":"c4b222c0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c4b222c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377/signaling 200 14ms","method":"POST","requestID":"c4b222c0-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c4b4bad0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393e4ceb-04f3-4512-8417-a44c957e0255","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4577ffdf-a581-4e9b-90c4-b57215a00615","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615901.95441} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.669823,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c4b4bad0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255","object_type":"device","rebac_allow":false,"scope_allow":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":"c4b4bad0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c4b4bad0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/393e4ceb-04f3-4512-8417-a44c957e0255/signaling 200 10ms","method":"POST","requestID":"c4b4bad0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/393e4ceb-04f3-4512-8417-a44c957e0255/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F00396cee-39a1-4b4d-8af7-8f97c60c5812#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F00396cee-39a1-4b4d-8af7-8f97c60c5812","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"b0ecb955-7d78-47a1-9b0f-68797f84cf21","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615901.9593985} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4ec1317c-4fd9-432a-afb9-38ae687c74bf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615901.9606953} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca"} authorization-1 | {"level":"info","message":"POST /relations/update 200 52ms","method":"POST","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca","responseTime":52,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c4b6ddb0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c4b704c0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.6653,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c4b6ddb0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615901,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMX0.-z032W7RYYSxiK-TBpoWhQPLQV75BTpRfsDU5qKH_do"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c4b6ddb0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.479026,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c4b704c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615901,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMX0.-z032W7RYYSxiK-TBpoWhQPLQV75BTpRfsDU5qKH_do"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c4b704c0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:59.485432752Z"}]},"request_id":"7a5ae0e2-9f7a-4c03-9dae-e30a6ba8fdc7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615901.9737434} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c4b6ddb0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"02/Aug/2024:16:25:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"808","request_time":"0.214","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca"} experiment-1 | {"level":"info","message":"POST /experiments? 201 209ms","method":"POST","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca","responseTime":209,"status":201,"url":"/experiments?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393e4ceb-04f3-4512-8417-a44c957e0255","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393e4ceb-04f3-4512-8417-a44c957e0255","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:59.619090436Z"}]},"request_id":"cb4dbefe-e6a5-4654-9e9d-9bd1a3e85b19","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615901.9753137} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c4b704c0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c4b6ddb0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377? 200 19ms","method":"GET","requestID":"c4b6ddb0-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c4b704c0-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMX0.-z032W7RYYSxiK-TBpoWhQPLQV75BTpRfsDU5qKH_do","level":"info","message":"auth send jwt","requestID":"6965fe2380f3bd42783ddbd969f13564"} device-1 | {"level":"info","message":"GET /devices/393e4ceb-04f3-4512-8417-a44c957e0255? 200 19ms","method":"GET","requestID":"c4b704c0-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/393e4ceb-04f3-4512-8417-a44c957e0255?"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6965fe2380f3bd42783ddbd969f13564","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6965fe2380f3bd42783ddbd969f13564"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812"},"level":"info","message":"Building connection plan","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"c12de58e-8ca5-4fd5-a68d-fdaabd012630"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"98710ed7-39a7-499e-90fa-2d4584274384"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"17eb65e8-d82a-4787-ba91-7357499dde71"}]},"level":"info","message":"Built pairwise service configurations","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"c4ba6020-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.812917,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"6965fe2380f3bd42783ddbd969f13564","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615901,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMX0.-z032W7RYYSxiK-TBpoWhQPLQV75BTpRfsDU5qKH_do"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6965fe2380f3bd42783ddbd969f13564","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.665992,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c4ba6020-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615901,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMX0.-z032W7RYYSxiK-TBpoWhQPLQV75BTpRfsDU5qKH_do"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c4ba6020-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:59.485432752Z"}]},"request_id":"8da3fd91-253b-4d35-83aa-09cadc40ae84","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615901.9917552} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6965fe2380f3bd42783ddbd969f13564","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6965fe2380f3bd42783ddbd969f13564"} gateway-1 | {"time_local":"02/Aug/2024:16:25:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377? HTTP/1.1","status": "200","body_bytes_sent":"845","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6965fe2380f3bd42783ddbd969f13564"} device-1 | {"level":"info","message":"GET /devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377? 200 13ms","method":"GET","requestID":"6965fe2380f3bd42783ddbd969f13564","responseTime":13,"status":200,"url":"/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377?"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"0a8824a8-359b-42c0-843e-6db342ab1632","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.003495} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMn0.PLKbpzvIgFFV9IzPYH004TDqIp-JM3vkuTwSLPzaFcI","level":"info","message":"auth send jwt","requestID":"f979a886afa746cadaecdc50ac7dd3e8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2222b7bb-8ec7-4b27-8836-55782f9972ad","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.003795} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f979a886afa746cadaecdc50ac7dd3e8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f979a886afa746cadaecdc50ac7dd3e8"} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c4ba6020-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.817538,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f979a886afa746cadaecdc50ac7dd3e8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615902,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMn0.PLKbpzvIgFFV9IzPYH004TDqIp-JM3vkuTwSLPzaFcI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f979a886afa746cadaecdc50ac7dd3e8","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393e4ceb-04f3-4512-8417-a44c957e0255","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393e4ceb-04f3-4512-8417-a44c957e0255","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:24:59.619090436Z"}]},"request_id":"12e27b04-50d4-42af-9516-c7c42a6357ec","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.0124526} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f979a886afa746cadaecdc50ac7dd3e8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"c4ba6020-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"c4ba6020-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f9f6104d-82df-4078-b740-6194e21053d5'","requestID":"c4ba6020-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f9f6104d-82df-4078-b740-6194e21053d5'","requestID":"c4ba6020-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"c4ba6020-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 36ms","method":"POST","requestID":"c4ba6020-50eb-11ef-8434-2f6d198c7397","responseTime":36,"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":"f979a886afa746cadaecdc50ac7dd3e8"} gateway-1 | {"time_local":"02/Aug/2024:16:25:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/393e4ceb-04f3-4512-8417-a44c957e0255? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f979a886afa746cadaecdc50ac7dd3e8"} device-1 | {"level":"info","message":"GET /devices/393e4ceb-04f3-4512-8417-a44c957e0255? 200 18ms","method":"GET","requestID":"f979a886afa746cadaecdc50ac7dd3e8","responseTime":18,"status":200,"url":"/devices/393e4ceb-04f3-4512-8417-a44c957e0255?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"c4ba6020-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"b6cb0fe979b787ab2c5cdd46be5779ca"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c4c4c060-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6fd1cf04-c2df-4e0a-be72-c619aca39c5f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.0582683} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.352419,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c4c4c060-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","object_type":"device","rebac_allow":false,"scope_allow":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":"c4c4c060-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c4c4c060-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377/signaling 200 8ms","method":"POST","requestID":"c4c4c060-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c4c64700-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393e4ceb-04f3-4512-8417-a44c957e0255","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"314c0f6f-b2cc-4883-87b5-962af3aa7dde","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.0688665} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.484611,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c4c64700-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255","object_type":"device","rebac_allow":false,"scope_allow":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":"c4c64700-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c4c64700-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/393e4ceb-04f3-4512-8417-a44c957e0255/signaling 200 9ms","method":"POST","requestID":"c4c64700-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/393e4ceb-04f3-4512-8417-a44c957e0255/signaling"} device-1 | {"device":"3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"393e4ceb-04f3-4512-8417-a44c957e0255","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"393e4ceb-04f3-4512-8417-a44c957e0255","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 1112005608281503388 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:Py1c\r\na=ice-pwd:f94NkJs9adtWI9gIyFVcyD2o\r\na=ice-options:trickle\r\na=fingerprint:sha-256 B3:81:9B:29:18:29:CF:09:F1:02:03:A5:88:2A:7A:E3:E5:87:30:B9:90:B4:8E:C2:39:6B:58:84:91:77:71:AA\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 7158029541073508134 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:XKGi\r\na=ice-pwd:5DCqs3KmuUaemUf1gq6SOFZB\r\na=ice-options:trickle\r\na=fingerprint:sha-256 F8:2A:EC:5F:C3:21:92:8C:0E:CF:53:2A:5E:15:97:A6:40:9F:FE:2B:31:56:E4:9B:1B:8F:A0:92:1D:32:3F:AB\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"393e4ceb-04f3-4512-8417-a44c957e0255","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1336378554 1 udp 2113937151 09341ed7-6aae-4dfd-8710-15af2357fbeb.local 40339 typ host generation 0 ufrag XKGi network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"393e4ceb-04f3-4512-8417-a44c957e0255","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1253018594 1 udp 1677729535 141.24.211.56 40339 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag XKGi network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"393e4ceb-04f3-4512-8417-a44c957e0255","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255'"} device-1 | {"content":{"candidate":"candidate:182961151 1 udp 2113937151 8803a946-4ad5-460c-9267-923d81d99dfd.local 43815 typ host generation 0 ufrag Py1c network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:46106680 1 udp 1677729535 141.24.211.56 43815 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag Py1c network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377'"} device-1 | {"device":"3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"393e4ceb-04f3-4512-8417-a44c957e0255","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"393e4ceb-04f3-4512-8417-a44c957e0255","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f9f6104d-82df-4078-b740-6194e21053d5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f9f6104d-82df-4078-b740-6194e21053d5","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9d4f6fa93ed38e4ca21b550b6609c957","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":"9d4f6fa93ed38e4ca21b550b6609c957","responseTime":0,"status":200,"url":"/auth"} device-1 | {"device":"3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/f9f6104d-82df-4078-b740-6194e21053d5"}}},"level":"info","message":"received a callback","requestID":"9d4f6fa93ed38e4ca21b550b6609c957"} device-1 | {"device":"393e4ceb-04f3-4512-8417-a44c957e0255","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"393e4ceb-04f3-4512-8417-a44c957e0255","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 12ms","method":"POST","requestID":"9d4f6fa93ed38e4ca21b550b6609c957","responseTime":12,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:02 +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":"9d4f6fa93ed38e4ca21b550b6609c957"} device-1 | {"data":{"peerconnection":"f9f6104d-82df-4078-b740-6194e21053d5","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"f9f6104d-82df-4078-b740-6194e21053d5","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/f9f6104d-82df-4078-b740-6194e21053d5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f9f6104d-82df-4078-b740-6194e21053d5","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c2c30158ac8ae3de9b9acb59803e6659","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":"c2c30158ac8ae3de9b9acb59803e6659","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/f9f6104d-82df-4078-b740-6194e21053d5"}}},"level":"info","message":"received a callback","requestID":"c2c30158ac8ae3de9b9acb59803e6659"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"c4d8e4a0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff9f6104d-82df-4078-b740-6194e21053d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8b06b6e8-586a-4c13-b1bf-c694488d8c39","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.190727} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.028193,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f9f6104d-82df-4078-b740-6194e21053d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c4d8e4a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f9f6104d-82df-4078-b740-6194e21053d5","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":"c4d8e4a0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"c4d8e4a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/f9f6104d-82df-4078-b740-6194e21053d5 200 9ms","method":"GET","requestID":"c4d8e4a0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/peerconnections/f9f6104d-82df-4078-b740-6194e21053d5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 35ms","method":"POST","requestID":"c2c30158ac8ae3de9b9acb59803e6659","responseTime":35,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:02 +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":"c2c30158ac8ae3de9b9acb59803e6659"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c4dd7880-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393e4ceb-04f3-4512-8417-a44c957e0255","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9732c578-6a31-4dd1-96eb-ccae9b2026e0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.2207875} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.248231,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c4dd7880-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255","object_type":"device","rebac_allow":false,"scope_allow":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":"c4dd7880-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c4dd7880-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/393e4ceb-04f3-4512-8417-a44c957e0255/signaling 200 9ms","method":"POST","requestID":"c4dd7880-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/393e4ceb-04f3-4512-8417-a44c957e0255/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c4df4d40-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"22de5f99-6479-4202-ab99-a9a266daf04c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.2332067} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.133058,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c4df4d40-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","object_type":"device","rebac_allow":false,"scope_allow":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":"c4df4d40-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c4df4d40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377/signaling 200 9ms","method":"POST","requestID":"c4df4d40-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMn0.PLKbpzvIgFFV9IzPYH004TDqIp-JM3vkuTwSLPzaFcI","level":"info","message":"auth send jwt","requestID":"b95bb64d6d41d68d044255160c59963e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b95bb64d6d41d68d044255160c59963e","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812","requestID":"b95bb64d6d41d68d044255160c59963e"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.729168,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b95bb64d6d41d68d044255160c59963e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615902,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMn0.PLKbpzvIgFFV9IzPYH004TDqIp-JM3vkuTwSLPzaFcI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b95bb64d6d41d68d044255160c59963e","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812","requestID":"b95bb64d6d41d68d044255160c59963e"} gateway-1 | {"time_local":"02/Aug/2024:16:25:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812 HTTP/1.1","status": "200","body_bytes_sent":"881","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b95bb64d6d41d68d044255160c59963e"} experiment-1 | {"level":"info","message":"GET /experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812 200 10ms","method":"GET","requestID":"b95bb64d6d41d68d044255160c59963e","responseTime":10,"status":200,"url":"/experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMn0.PLKbpzvIgFFV9IzPYH004TDqIp-JM3vkuTwSLPzaFcI","level":"info","message":"auth send jwt","requestID":"69497ac79f71c5c4d59231685ff40365"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"69497ac79f71c5c4d59231685ff40365","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812","requestID":"69497ac79f71c5c4d59231685ff40365"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.686317,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"69497ac79f71c5c4d59231685ff40365","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615902,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMn0.PLKbpzvIgFFV9IzPYH004TDqIp-JM3vkuTwSLPzaFcI"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"69497ac79f71c5c4d59231685ff40365","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812"},"level":"info","message":"Attempting to finish experiment","requestID":"69497ac79f71c5c4d59231685ff40365"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"c4e4cb80-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.681115,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f9f6104d-82df-4078-b740-6194e21053d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c4e4cb80-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/f9f6104d-82df-4078-b740-6194e21053d5","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615902,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMn0.PLKbpzvIgFFV9IzPYH004TDqIp-JM3vkuTwSLPzaFcI"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"c4e4cb80-50eb-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f9f6104d-82df-4078-b740-6194e21053d5","device":"3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f9f6104d-82df-4078-b740-6194e21053d5","device":"393e4ceb-04f3-4512-8417-a44c957e0255","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f9f6104d-82df-4078-b740-6194e21053d5' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f9f6104d-82df-4078-b740-6194e21053d5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f9f6104d-82df-4078-b740-6194e21053d5","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff9f6104d-82df-4078-b740-6194e21053d5': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff9f6104d-82df-4078-b740-6194e21053d5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"d80390dd-21c6-46e7-a779-8cf5513e5506","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.279163} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"24c08632-bdf0-42c6-a8a3-ed9b244ad54a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.279447} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0a9ca175be643241e190560dc9384d9f","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":"0a9ca175be643241e190560dc9384d9f","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"624b978c2b4567ea127a8aa8a8b5a6e8","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":"c4e4cb80-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"624b978c2b4567ea127a8aa8a8b5a6e8","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f9f6104d-82df-4078-b740-6194e21053d5"}}},"level":"info","message":"received a callback","requestID":"0a9ca175be643241e190560dc9384d9f"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f9f6104d-82df-4078-b740-6194e21053d5"}}},"level":"info","message":"received a callback","requestID":"624b978c2b4567ea127a8aa8a8b5a6e8"} device-1 | {"data":{"peerconnection":"f9f6104d-82df-4078-b740-6194e21053d5","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"c4e4cb80-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/f9f6104d-82df-4078-b740-6194e21053d5 204 34ms","method":"DELETE","requestID":"c4e4cb80-50eb-11ef-8434-2f6d198c7397","responseTime":34,"status":204,"url":"/peerconnections/f9f6104d-82df-4078-b740-6194e21053d5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812"},"level":"info","message":"Successfully finished experiment","requestID":"69497ac79f71c5c4d59231685ff40365"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c4ec6ca0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393e4ceb-04f3-4512-8417-a44c957e0255","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3db9ac61-b754-4ccf-a60f-83ab4cd0d1ce","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.3197067} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.722825,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c4ec6ca0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255","object_type":"device","rebac_allow":false,"scope_allow":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":"c4ec6ca0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c4ec6ca0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/393e4ceb-04f3-4512-8417-a44c957e0255/signaling 200 9ms","method":"POST","requestID":"c4ec6ca0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/393e4ceb-04f3-4512-8417-a44c957e0255/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F00396cee-39a1-4b4d-8af7-8f97c60c5812': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F00396cee-39a1-4b4d-8af7-8f97c60c5812","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"9be19a7c-701a-4ed3-a8d3-9e85ca95e4cf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.3258014} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c4ee4160-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a2f8621d-80d0-4dfa-a238-1a921c53b37c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.3261764} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"69497ac79f71c5c4d59231685ff40365","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4834bac1-6315-40a5-9a41-1832d3aec4f4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.3303545} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.162866,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c4ee4160-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377","object_type":"device","rebac_allow":false,"scope_allow":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":"c4ee4160-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c4ee4160-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377/signaling 200 8ms","method":"POST","requestID":"c4ee4160-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812","requestID":"69497ac79f71c5c4d59231685ff40365"} gateway-1 | {"time_local":"02/Aug/2024:16:25:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.130","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"69497ac79f71c5c4d59231685ff40365"} experiment-1 | {"level":"info","message":"DELETE /experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812 204 129ms","method":"DELETE","requestID":"69497ac79f71c5c4d59231685ff40365","responseTime":129,"status":204,"url":"/experiments/00396cee-39a1-4b4d-8af7-8f97c60c5812"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 104ms","method":"POST","requestID":"0a9ca175be643241e190560dc9384d9f","responseTime":104,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:02 +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.107","http_referrer":"","http_user_agent":"node-fetch","requestID":"0a9ca175be643241e190560dc9384d9f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 104ms","method":"POST","requestID":"624b978c2b4567ea127a8aa8a8b5a6e8","responseTime":104,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:02 +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.108","http_referrer":"","http_user_agent":"node-fetch","requestID":"624b978c2b4567ea127a8aa8a8b5a6e8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMn0.PLKbpzvIgFFV9IzPYH004TDqIp-JM3vkuTwSLPzaFcI","level":"info","message":"auth send jwt","requestID":"14593aefb8d37061f7e8cfd34288a200"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"14593aefb8d37061f7e8cfd34288a200","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"14593aefb8d37061f7e8cfd34288a200"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:02Z"} gateway-1 | {"time_local":"02/Aug/2024:16:25:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3076","request_time":"0.751","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":"2e9fe88ebde38b093d125a8d65df2bb7"} gateway-1 | {"time_local":"02/Aug/2024:16:25:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3079","request_time":"0.739","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":"3619b5093a2ed0a330920d8391b6a0cc"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.893519,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"14593aefb8d37061f7e8cfd34288a200","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615902,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMn0.PLKbpzvIgFFV9IzPYH004TDqIp-JM3vkuTwSLPzaFcI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"14593aefb8d37061f7e8cfd34288a200","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/3b9ec3f1-c3ec-424a-a72d-3a26d2f4d377' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/393e4ceb-04f3-4512-8417-a44c957e0255' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d4266b-0d59-43eb-928b-6c58cc3765d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"15adfe5a-ed0f-476a-990c-5f38c1f52d65","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.4118462} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"14593aefb8d37061f7e8cfd34288a200","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5a998979-ff3f-4d07-93cf-0489f504a58a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.4160357} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"14593aefb8d37061f7e8cfd34288a200","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d4266b-0d59-43eb-928b-6c58cc3765d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"d55c3045-2b88-4ab2-9b5b-d9ab1904cb7c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.4270208} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"98abb921-6594-4d7c-9200-eb5d8768b38f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.427076} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"14593aefb8d37061f7e8cfd34288a200","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d4266b-0d59-43eb-928b-6c58cc3765d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d4266b-0d59-43eb-928b-6c58cc3765d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:02.427003068Z"}]},"request_id":"8ad07f51-e299-4215-9d57-4207c353e288","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.43087} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"14593aefb8d37061f7e8cfd34288a200","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"14593aefb8d37061f7e8cfd34288a200"} gateway-1 | {"time_local":"02/Aug/2024:16:25:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"14593aefb8d37061f7e8cfd34288a200"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"14593aefb8d37061f7e8cfd34288a200","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMn0.PLKbpzvIgFFV9IzPYH004TDqIp-JM3vkuTwSLPzaFcI","level":"info","message":"auth send jwt","requestID":"f194f79aeb3f8bece33566d6670df437"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f194f79aeb3f8bece33566d6670df437","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f194f79aeb3f8bece33566d6670df437"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.824453,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f194f79aeb3f8bece33566d6670df437","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615902,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMn0.PLKbpzvIgFFV9IzPYH004TDqIp-JM3vkuTwSLPzaFcI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f194f79aeb3f8bece33566d6670df437","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7738422c-003c-4d6a-a5f2-849f9ceab9d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"50484c56-fdd2-4322-9b57-adaf1f7f4505","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.45104} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f194f79aeb3f8bece33566d6670df437","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c00217aa-8b15-4cc3-893f-3c71c69e39b8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.4553802} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"f194f79aeb3f8bece33566d6670df437","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7738422c-003c-4d6a-a5f2-849f9ceab9d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"9c1d2265-8af9-48e0-92dc-bc02eeac3c1b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.4634695} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"64a9ef10-62b9-41cc-ac8f-d50041319b0e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.4638188} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"f194f79aeb3f8bece33566d6670df437","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7738422c-003c-4d6a-a5f2-849f9ceab9d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7738422c-003c-4d6a-a5f2-849f9ceab9d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:02.463452592Z"}]},"request_id":"37ce3c28-39d6-4e3f-854c-95c433eeb309","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.467496} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f194f79aeb3f8bece33566d6670df437","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f194f79aeb3f8bece33566d6670df437"} gateway-1 | {"time_local":"02/Aug/2024:16:25:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.036","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f194f79aeb3f8bece33566d6670df437"} device-1 | {"level":"info","message":"POST /devices? 201 32ms","method":"POST","requestID":"f194f79aeb3f8bece33566d6670df437","responseTime":32,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMn0.PLKbpzvIgFFV9IzPYH004TDqIp-JM3vkuTwSLPzaFcI","level":"info","message":"auth send jwt","requestID":"b981293d7e36aaee9d0e2fbce78eda36"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b981293d7e36aaee9d0e2fbce78eda36","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b981293d7e36aaee9d0e2fbce78eda36"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.722802,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b981293d7e36aaee9d0e2fbce78eda36","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615902,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwMn0.PLKbpzvIgFFV9IzPYH004TDqIp-JM3vkuTwSLPzaFcI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b981293d7e36aaee9d0e2fbce78eda36","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d4266b-0d59-43eb-928b-6c58cc3765d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d4266b-0d59-43eb-928b-6c58cc3765d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:02.427003068Z"}]},"request_id":"4138ed27-283f-4186-b75f-72dee9187afd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.9897892} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b981293d7e36aaee9d0e2fbce78eda36","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"703e9e71-7df7-4c84-8c09-ae44144383a8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615902.9960067} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b981293d7e36aaee9d0e2fbce78eda36","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d4266b-0d59-43eb-928b-6c58cc3765d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d4266b-0d59-43eb-928b-6c58cc3765d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:02.427003068Z"}]},"request_id":"bd557988-891b-49a5-a3a8-d14ff21cedd1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615903.0077193} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b981293d7e36aaee9d0e2fbce78eda36","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b981293d7e36aaee9d0e2fbce78eda36"} gateway-1 | {"time_local":"02/Aug/2024:16:25:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/79d4266b-0d59-43eb-928b-6c58cc3765d5 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"b981293d7e36aaee9d0e2fbce78eda36"} device-1 | {"level":"info","message":"PATCH /devices/79d4266b-0d59-43eb-928b-6c58cc3765d5 200 33ms","method":"PATCH","requestID":"b981293d7e36aaee9d0e2fbce78eda36","responseTime":33,"status":200,"url":"/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwM30.abPs_Ox5T937hoH9hwnTGPhrptN4D1JyVi6125n2CHU","level":"info","message":"auth send jwt","requestID":"0b2a1da5a6a2638281bbf799892d91b6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0b2a1da5a6a2638281bbf799892d91b6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0b2a1da5a6a2638281bbf799892d91b6"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.697152,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0b2a1da5a6a2638281bbf799892d91b6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615903,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwM30.abPs_Ox5T937hoH9hwnTGPhrptN4D1JyVi6125n2CHU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0b2a1da5a6a2638281bbf799892d91b6","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0b2a1da5a6a2638281bbf799892d91b6"} gateway-1 | {"time_local":"02/Aug/2024:16:25:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/79d4266b-0d59-43eb-928b-6c58cc3765d5/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"0b2a1da5a6a2638281bbf799892d91b6"} device-1 | {"level":"info","message":"POST /devices/79d4266b-0d59-43eb-928b-6c58cc3765d5/websocket 200 18ms","method":"POST","requestID":"0b2a1da5a6a2638281bbf799892d91b6","responseTime":18,"status":200,"url":"/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a38734597c334826062feb1c6d93e3a7","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":"a38734597c334826062feb1c6d93e3a7","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5/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":"a38734597c334826062feb1c6d93e3a7"} device-1 | {"level":"info","message":"OPTIONS /devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5/websocket 200 1ms","method":"OPTIONS","requestID":"a38734597c334826062feb1c6d93e3a7","responseTime":1,"status":200,"url":"/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwNH0.nnGQV2qOImjVI09N3xnQwZ_OLMlBwgdC9iw-wEXGw9o","level":"info","message":"auth send jwt","requestID":"134920b72397cbf62ab52301077d8e1d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"134920b72397cbf62ab52301077d8e1d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"134920b72397cbf62ab52301077d8e1d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.84501,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"134920b72397cbf62ab52301077d8e1d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615904,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwNH0.nnGQV2qOImjVI09N3xnQwZ_OLMlBwgdC9iw-wEXGw9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"134920b72397cbf62ab52301077d8e1d","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"134920b72397cbf62ab52301077d8e1d"} device-1 | {"level":"info","message":"POST /devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5/websocket 200 18ms","method":"POST","requestID":"134920b72397cbf62ab52301077d8e1d","responseTime":18,"status":200,"url":"/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:25:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5/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":"134920b72397cbf62ab52301077d8e1d"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"65bb4a642e4429ff72a7ba9edb162cb0","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":"65bb4a642e4429ff72a7ba9edb162cb0","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"65bb4a642e4429ff72a7ba9edb162cb0"} device-1 | {"level":"info","message":"OPTIONS /devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5? 200 1ms","method":"OPTIONS","requestID":"65bb4a642e4429ff72a7ba9edb162cb0","responseTime":1,"status":200,"url":"/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwNH0.nnGQV2qOImjVI09N3xnQwZ_OLMlBwgdC9iw-wEXGw9o","level":"info","message":"auth send jwt","requestID":"5fff00e1742133a65721d995fcd04964"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5fff00e1742133a65721d995fcd04964","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5fff00e1742133a65721d995fcd04964"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.211819,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"5fff00e1742133a65721d995fcd04964","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615904,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwNH0.nnGQV2qOImjVI09N3xnQwZ_OLMlBwgdC9iw-wEXGw9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5fff00e1742133a65721d995fcd04964","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7738422c-003c-4d6a-a5f2-849f9ceab9d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7738422c-003c-4d6a-a5f2-849f9ceab9d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:02.463452592Z"}]},"request_id":"83cede39-50ef-4c80-a959-53fb43ece2cc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615904.5560446} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5fff00e1742133a65721d995fcd04964","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dc513678-015d-498e-85db-53b91008f027","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615904.5637941} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"5fff00e1742133a65721d995fcd04964","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7738422c-003c-4d6a-a5f2-849f9ceab9d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7738422c-003c-4d6a-a5f2-849f9ceab9d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:02.463452592Z"}]},"request_id":"479f50df-087a-4b7b-8ffa-89061a359254","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615904.5753322} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5fff00e1742133a65721d995fcd04964","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5fff00e1742133a65721d995fcd04964"} device-1 | {"level":"info","message":"PATCH /devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5? 200 37ms","method":"PATCH","requestID":"5fff00e1742133a65721d995fcd04964","responseTime":37,"status":200,"url":"/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"5fff00e1742133a65721d995fcd04964"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwNH0.nnGQV2qOImjVI09N3xnQwZ_OLMlBwgdC9iw-wEXGw9o","level":"info","message":"auth send jwt","requestID":"60bb4edd6b0cdd2af9eab885268f234b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"60bb4edd6b0cdd2af9eab885268f234b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"60bb4edd6b0cdd2af9eab885268f234b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.224964,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"60bb4edd6b0cdd2af9eab885268f234b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615904,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwNH0.nnGQV2qOImjVI09N3xnQwZ_OLMlBwgdC9iw-wEXGw9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"60bb4edd6b0cdd2af9eab885268f234b","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d4266b-0d59-43eb-928b-6c58cc3765d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d4266b-0d59-43eb-928b-6c58cc3765d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:02.427003068Z"}]},"request_id":"04a9dd11-ae81-49cb-96a1-dc015d729caa","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615904.6048658} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"60bb4edd6b0cdd2af9eab885268f234b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"60bb4edd6b0cdd2af9eab885268f234b"} device-1 | {"level":"info","message":"GET /devices/79d4266b-0d59-43eb-928b-6c58cc3765d5? 200 22ms","method":"GET","requestID":"60bb4edd6b0cdd2af9eab885268f234b","responseTime":22,"status":200,"url":"/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/79d4266b-0d59-43eb-928b-6c58cc3765d5? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.029","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"60bb4edd6b0cdd2af9eab885268f234b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwNH0.nnGQV2qOImjVI09N3xnQwZ_OLMlBwgdC9iw-wEXGw9o","level":"info","message":"auth send jwt","requestID":"615403a16fa50ee776509bf7686ae9c1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"615403a16fa50ee776509bf7686ae9c1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"615403a16fa50ee776509bf7686ae9c1"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.081608,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"615403a16fa50ee776509bf7686ae9c1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615904,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwNH0.nnGQV2qOImjVI09N3xnQwZ_OLMlBwgdC9iw-wEXGw9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"615403a16fa50ee776509bf7686ae9c1","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7738422c-003c-4d6a-a5f2-849f9ceab9d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7738422c-003c-4d6a-a5f2-849f9ceab9d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:02.463452592Z"}]},"request_id":"76ed4315-71af-4271-a121-2615dfd6544f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615904.6346037} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"615403a16fa50ee776509bf7686ae9c1","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"615403a16fa50ee776509bf7686ae9c1"} gateway-1 | {"time_local":"02/Aug/2024:16:25:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"615403a16fa50ee776509bf7686ae9c1"} device-1 | {"level":"info","message":"GET /devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5? 200 18ms","method":"GET","requestID":"615403a16fa50ee776509bf7686ae9c1","responseTime":18,"status":200,"url":"/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwNH0.nnGQV2qOImjVI09N3xnQwZ_OLMlBwgdC9iw-wEXGw9o","level":"info","message":"auth send jwt","requestID":"20762cae116d63d3faa337f1165d37af"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"20762cae116d63d3faa337f1165d37af","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"20762cae116d63d3faa337f1165d37af"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.164967,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"20762cae116d63d3faa337f1165d37af","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615904,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwNH0.nnGQV2qOImjVI09N3xnQwZ_OLMlBwgdC9iw-wEXGw9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"20762cae116d63d3faa337f1165d37af","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8"},"level":"info","message":"Attempting to run experiment","requestID":"20762cae116d63d3faa337f1165d37af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8"},"level":"info","message":"Attempting to book experiment","requestID":"20762cae116d63d3faa337f1165d37af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8"},"level":"info","message":"Successfully booked experiment","requestID":"20762cae116d63d3faa337f1165d37af"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c657bc70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c6580a90-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.273734,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c657bc70-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615904,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwNH0.nnGQV2qOImjVI09N3xnQwZ_OLMlBwgdC9iw-wEXGw9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c657bc70-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.25478,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c6580a90-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615904,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwNH0.nnGQV2qOImjVI09N3xnQwZ_OLMlBwgdC9iw-wEXGw9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c6580a90-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d4266b-0d59-43eb-928b-6c58cc3765d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d4266b-0d59-43eb-928b-6c58cc3765d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:02.427003068Z"}]},"request_id":"133e30c8-4001-46a5-8573-e6c86b498864","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615904.707621} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c657bc70-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7738422c-003c-4d6a-a5f2-849f9ceab9d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7738422c-003c-4d6a-a5f2-849f9ceab9d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:02.463452592Z"}]},"request_id":"f46734d8-79b2-48ae-af49-92f903b39632","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615904.7095225} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c6580a90-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c657bc70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/79d4266b-0d59-43eb-928b-6c58cc3765d5? 200 22ms","method":"GET","requestID":"c657bc70-50eb-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c6580a90-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5? 200 21ms","method":"GET","requestID":"c6580a90-50eb-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8"},"level":"info","message":"Setting up experiment","requestID":"20762cae116d63d3faa337f1165d37af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"20762cae116d63d3faa337f1165d37af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8"},"level":"info","message":"Successfully locked booking for experiment","requestID":"20762cae116d63d3faa337f1165d37af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"20762cae116d63d3faa337f1165d37af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"20762cae116d63d3faa337f1165d37af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8"},"level":"info","message":"Attempting to update booking for experiment","requestID":"20762cae116d63d3faa337f1165d37af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8"},"level":"info","message":"Successfully updated booking for experiment","requestID":"20762cae116d63d3faa337f1165d37af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8"},"level":"info","message":"Successfully set up experiment","requestID":"20762cae116d63d3faa337f1165d37af"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c66291e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c662e000-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c6632e20-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.666669,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:04Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8"},"level":"info","message":"Successfully running experiment","requestID":"20762cae116d63d3faa337f1165d37af"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c66291e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615904,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwNH0.nnGQV2qOImjVI09N3xnQwZ_OLMlBwgdC9iw-wEXGw9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"c66291e0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.208198,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"client_addr":"127.0.0.1:37522","level":"info","msg":"Received request.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c662e000-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615904,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwNH0.nnGQV2qOImjVI09N3xnQwZ_OLMlBwgdC9iw-wEXGw9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c662e000-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37522","level":"info","msg":"Sent response.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.53365,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d4266b-0d59-43eb-928b-6c58cc3765d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d2d05e2c-4da6-45c7-9aae-286d08fe8149","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615904.7775235} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c6632e20-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5","object_type":"device","rebac_allow":false,"scope_allow":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":"c6632e20-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d4266b-0d59-43eb-928b-6c58cc3765d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d4266b-0d59-43eb-928b-6c58cc3765d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:02.427003068Z"}]},"request_id":"4c5e6c87-ad0b-4c2a-9868-54156e4ef564","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615904.7815504} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c66291e0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c6632e20-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7738422c-003c-4d6a-a5f2-849f9ceab9d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7738422c-003c-4d6a-a5f2-849f9ceab9d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:02.463452592Z"}]},"request_id":"e4bf3f1f-76fa-4a90-8333-035ad883bc6e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615904.784155} device-1 | {"level":"info","message":"POST /devices/79d4266b-0d59-43eb-928b-6c58cc3765d5/signaling 200 15ms","method":"POST","requestID":"c6632e20-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c662e000-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c662e000-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5? 200 22ms","method":"GET","requestID":"c662e000-50eb-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c66291e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/79d4266b-0d59-43eb-928b-6c58cc3765d5? 200 25ms","method":"GET","requestID":"c66291e0-50eb-11ef-8434-2f6d198c7397","responseTime":25,"status":200,"url":"/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c666feb0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F42444e56-86ee-4e92-9f72-dc51f5c444c8#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F42444e56-86ee-4e92-9f72-dc51f5c444c8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"bfae9d86-d7b7-43d0-82d7-06b601ea8a66","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615904.7966084} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"286763ef-1ad4-4d9f-b194-d974d8883f6f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615904.796895} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c6679af0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"20762cae116d63d3faa337f1165d37af","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7738422c-003c-4d6a-a5f2-849f9ceab9d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f483047f-b019-4c84-9f03-0331a2c4f3c0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615904.8018575} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.166876,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c666feb0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5","object_type":"device","rebac_allow":false,"scope_allow":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":"c666feb0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d4266b-0d59-43eb-928b-6c58cc3765d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"51766799-7141-4251-a566-6779ddd65f8d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615904.8042061} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.439446,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c6679af0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5","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":"c666feb0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c6679af0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5/signaling 200 11ms","method":"POST","requestID":"c666feb0-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"20762cae116d63d3faa337f1165d37af"} gateway-1 | {"time_local":"02/Aug/2024:16:25:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.164","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"20762cae116d63d3faa337f1165d37af"} experiment-1 | {"level":"info","message":"POST /experiments? 201 157ms","method":"POST","requestID":"20762cae116d63d3faa337f1165d37af","responseTime":157,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c6679af0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/79d4266b-0d59-43eb-928b-6c58cc3765d5/signaling 200 10ms","method":"POST","requestID":"c6679af0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c6696fb0-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwNH0.nnGQV2qOImjVI09N3xnQwZ_OLMlBwgdC9iw-wEXGw9o","level":"info","message":"auth send jwt","requestID":"f268e4e523540a9e89a530356edc4c16"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f268e4e523540a9e89a530356edc4c16","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f268e4e523540a9e89a530356edc4c16"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7738422c-003c-4d6a-a5f2-849f9ceab9d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b2a36dfd-0f39-47b3-878a-63dbbf1b6600","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615904.8159437} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.373087,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c6696fb0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5","object_type":"device","rebac_allow":false,"scope_allow":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":"c6696fb0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.867358,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f268e4e523540a9e89a530356edc4c16","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615904,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwNH0.nnGQV2qOImjVI09N3xnQwZ_OLMlBwgdC9iw-wEXGw9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f268e4e523540a9e89a530356edc4c16","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c6696fb0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5/signaling 200 10ms","method":"POST","requestID":"c6696fb0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5/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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d4266b-0d59-43eb-928b-6c58cc3765d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d4266b-0d59-43eb-928b-6c58cc3765d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:02.427003068Z"}]},"request_id":"188097d5-f495-43a6-9904-40cd087dcd92","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615904.821646} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"20762cae116d63d3faa337f1165d37af"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f268e4e523540a9e89a530356edc4c16","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c66b6b80-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c66b9290-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f268e4e523540a9e89a530356edc4c16"} gateway-1 | {"time_local":"02/Aug/2024:16:25:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/79d4266b-0d59-43eb-928b-6c58cc3765d5? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f268e4e523540a9e89a530356edc4c16"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.694402,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:04Z"} device-1 | {"level":"info","message":"GET /devices/79d4266b-0d59-43eb-928b-6c58cc3765d5? 200 14ms","method":"GET","requestID":"f268e4e523540a9e89a530356edc4c16","responseTime":14,"status":200,"url":"/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c66b6b80-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615904,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwNH0.nnGQV2qOImjVI09N3xnQwZ_OLMlBwgdC9iw-wEXGw9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c66b6b80-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Received request.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"client_addr":"127.0.0.1:46708","level":"info","msg":"Sent response.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.805269,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c66b9290-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615904,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwNH0.nnGQV2qOImjVI09N3xnQwZ_OLMlBwgdC9iw-wEXGw9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c66b9290-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwNH0.nnGQV2qOImjVI09N3xnQwZ_OLMlBwgdC9iw-wEXGw9o","level":"info","message":"auth send jwt","requestID":"814e4a6f2ca9cfaf42df804dd85ae030"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"814e4a6f2ca9cfaf42df804dd85ae030","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"814e4a6f2ca9cfaf42df804dd85ae030"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d4266b-0d59-43eb-928b-6c58cc3765d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d4266b-0d59-43eb-928b-6c58cc3765d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:02.427003068Z"}]},"request_id":"06ebb377-2159-4704-bbe1-0fc281a46134","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615904.8322742} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7738422c-003c-4d6a-a5f2-849f9ceab9d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7738422c-003c-4d6a-a5f2-849f9ceab9d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:02.463452592Z"}]},"request_id":"2581b6d0-4d70-4254-add3-08240ac0a21a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615904.8344948} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"c66b6b80-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c66b6b80-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"c66b9290-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.711077,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:04Z"} device-1 | {"level":"info","message":"GET /devices/79d4266b-0d59-43eb-928b-6c58cc3765d5? 200 17ms","method":"GET","requestID":"c66b6b80-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"814e4a6f2ca9cfaf42df804dd85ae030","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615904,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwNH0.nnGQV2qOImjVI09N3xnQwZ_OLMlBwgdC9iw-wEXGw9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"814e4a6f2ca9cfaf42df804dd85ae030","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c66b9290-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5? 200 19ms","method":"GET","requestID":"c66b9290-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7738422c-003c-4d6a-a5f2-849f9ceab9d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7738422c-003c-4d6a-a5f2-849f9ceab9d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:02.463452592Z"}]},"request_id":"09c4b1b7-caf0-46ef-afe1-fa6e551d551d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615904.845662} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8"},"level":"info","message":"Building connection plan","requestID":"20762cae116d63d3faa337f1165d37af"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"058608cd-650d-49d7-95bc-9a5d09230716"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"48002159-4c2d-4dff-ae55-d1c06962974a"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"26942f9f-a1b9-469a-8311-50e6f3991374"}]},"level":"info","message":"Built pairwise service configurations","requestID":"20762cae116d63d3faa337f1165d37af"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"814e4a6f2ca9cfaf42df804dd85ae030","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"20762cae116d63d3faa337f1165d37af"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"c66f3c10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"814e4a6f2ca9cfaf42df804dd85ae030"} gateway-1 | {"time_local":"02/Aug/2024:16:25:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"814e4a6f2ca9cfaf42df804dd85ae030"} device-1 | {"level":"info","message":"GET /devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5? 200 19ms","method":"GET","requestID":"814e4a6f2ca9cfaf42df804dd85ae030","responseTime":19,"status":200,"url":"/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.754644,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c66f3c10-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615904,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwNH0.nnGQV2qOImjVI09N3xnQwZ_OLMlBwgdC9iw-wEXGw9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c66f3c10-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"4cec0dc7-b639-4eea-a042-7071cd1114ae","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615904.8596084} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"63ee6108-d863-4a26-a8a7-b61d6a062918","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615904.8598528} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c66f3c10-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"c66f3c10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"c66f3c10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/960c0cd2-b3b7-4331-85d7-43afc9042504'","requestID":"c66f3c10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/960c0cd2-b3b7-4331-85d7-43afc9042504'","requestID":"c66f3c10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"c66f3c10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 22ms","method":"POST","requestID":"c66f3c10-50eb-11ef-8434-2f6d198c7397","responseTime":22,"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":"c66f3c10-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"20762cae116d63d3faa337f1165d37af"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c6775260-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d4266b-0d59-43eb-928b-6c58cc3765d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"13ce78e3-31a9-4c1c-a080-e55105218f3e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615904.9069452} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.417071,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c6775260-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5","object_type":"device","rebac_allow":false,"scope_allow":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":"c6775260-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"7738422c-003c-4d6a-a5f2-849f9ceab9d5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"7738422c-003c-4d6a-a5f2-849f9ceab9d5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c6775260-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/79d4266b-0d59-43eb-928b-6c58cc3765d5/signaling 200 12ms","method":"POST","requestID":"c6775260-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 4056492753107405690 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:WF8F\r\na=ice-pwd:uLrxVKyJq1A5aPu8N+JwCkkC\r\na=ice-options:trickle\r\na=fingerprint:sha-256 A7:2B:35:42:AF:AE:42:E5:68:AC:9A:98:B2:B1:D5:52:44:F3:88:5C:EE:B7:EC:31:01:5A:29:30:45:7C:3C:33\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"7738422c-003c-4d6a-a5f2-849f9ceab9d5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c679c360-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7738422c-003c-4d6a-a5f2-849f9ceab9d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c175f923-a012-4ef8-9ff9-bd155e606e3d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615904.9239473} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.007074,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c679c360-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5","object_type":"device","rebac_allow":false,"scope_allow":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":"c679c360-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c679c360-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5/signaling 200 10ms","method":"POST","requestID":"c679c360-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5/signaling"} device-1 | {"device":"7738422c-003c-4d6a-a5f2-849f9ceab9d5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"79d4266b-0d59-43eb-928b-6c58cc3765d5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"960c0cd2-b3b7-4331-85d7-43afc9042504","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"79d4266b-0d59-43eb-928b-6c58cc3765d5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"79d4266b-0d59-43eb-928b-6c58cc3765d5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"79d4266b-0d59-43eb-928b-6c58cc3765d5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"79d4266b-0d59-43eb-928b-6c58cc3765d5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/960c0cd2-b3b7-4331-85d7-43afc9042504' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"960c0cd2-b3b7-4331-85d7-43afc9042504","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"77f52ab78dc15db9ff0a1b33ddf506a8","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":"77f52ab78dc15db9ff0a1b33ddf506a8","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/960c0cd2-b3b7-4331-85d7-43afc9042504"}}},"level":"info","message":"received a callback","requestID":"77f52ab78dc15db9ff0a1b33ddf506a8"} device-1 | {"content":{"candidate":"candidate:102829723 1 udp 2113937151 1b18e025-51a9-45a1-b619-69b70394ac19.local 58304 typ host generation 0 ufrag WF8F network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"7738422c-003c-4d6a-a5f2-849f9ceab9d5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:861398230 1 udp 1677729535 141.24.211.56 58304 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag WF8F network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"7738422c-003c-4d6a-a5f2-849f9ceab9d5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 12ms","method":"POST","requestID":"77f52ab78dc15db9ff0a1b33ddf506a8","responseTime":12,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25: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.017","http_referrer":"","http_user_agent":"node-fetch","requestID":"77f52ab78dc15db9ff0a1b33ddf506a8"} device-1 | {"content":{"candidate":"candidate:352061092 1 udp 33562623 141.24.210.113 54523 typ relay raddr 141.24.211.56 rport 58304 generation 0 ufrag WF8F network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"7738422c-003c-4d6a-a5f2-849f9ceab9d5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"7738422c-003c-4d6a-a5f2-849f9ceab9d5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5'"} device-1 | {"data":{"peerconnection":"960c0cd2-b3b7-4331-85d7-43afc9042504","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"79d4266b-0d59-43eb-928b-6c58cc3765d5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7738422c-003c-4d6a-a5f2-849f9ceab9d5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"79d4266b-0d59-43eb-928b-6c58cc3765d5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"960c0cd2-b3b7-4331-85d7-43afc9042504","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/960c0cd2-b3b7-4331-85d7-43afc9042504' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"960c0cd2-b3b7-4331-85d7-43afc9042504","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c1062ad7f76a1e7df8f2171194b9b7a8","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":"c1062ad7f76a1e7df8f2171194b9b7a8","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/960c0cd2-b3b7-4331-85d7-43afc9042504"}}},"level":"info","message":"received a callback","requestID":"c1062ad7f76a1e7df8f2171194b9b7a8"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"c7b92130-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:07Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F960c0cd2-b3b7-4331-85d7-43afc9042504","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5d4c1b15-f7ca-4eed-a14a-f335640222be","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615907.0168967} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.354293,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/960c0cd2-b3b7-4331-85d7-43afc9042504","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c7b92130-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/960c0cd2-b3b7-4331-85d7-43afc9042504","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":"c7b92130-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"c7b92130-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/960c0cd2-b3b7-4331-85d7-43afc9042504 200 10ms","method":"GET","requestID":"c7b92130-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/peerconnections/960c0cd2-b3b7-4331-85d7-43afc9042504"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 51ms","method":"POST","requestID":"c1062ad7f76a1e7df8f2171194b9b7a8","responseTime":51,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:07 +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.054","http_referrer":"","http_user_agent":"node-fetch","requestID":"c1062ad7f76a1e7df8f2171194b9b7a8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c7bfd7f0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:07Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d4266b-0d59-43eb-928b-6c58cc3765d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6295345c-6357-4588-b74c-99c4afc45900","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615907.0606503} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.150105,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c7bfd7f0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5","object_type":"device","rebac_allow":false,"scope_allow":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":"c7bfd7f0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c7bfd7f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/79d4266b-0d59-43eb-928b-6c58cc3765d5/signaling 200 11ms","method":"POST","requestID":"c7bfd7f0-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c7c1d3c0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:07Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7738422c-003c-4d6a-a5f2-849f9ceab9d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6c5add89-6442-4b5e-8ec9-e11dac58c688","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615907.0744429} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.336941,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c7c1d3c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5","object_type":"device","rebac_allow":false,"scope_allow":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":"c7c1d3c0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c7c1d3c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5/signaling 200 12ms","method":"POST","requestID":"c7c1d3c0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwN30.xew0zqKwZSf_1c7YHlXDIxTJS1rSIleGLGtWCbX0Xws","level":"info","message":"auth send jwt","requestID":"9e60d331c955b4c872733c20816b4721"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9e60d331c955b4c872733c20816b4721","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8","requestID":"9e60d331c955b4c872733c20816b4721"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:07Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.244494,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"9e60d331c955b4c872733c20816b4721","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615907,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwN30.xew0zqKwZSf_1c7YHlXDIxTJS1rSIleGLGtWCbX0Xws"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9e60d331c955b4c872733c20816b4721","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8","requestID":"9e60d331c955b4c872733c20816b4721"} gateway-1 | {"time_local":"02/Aug/2024:16:25:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8 HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9e60d331c955b4c872733c20816b4721"} experiment-1 | {"level":"info","message":"GET /experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8 200 20ms","method":"GET","requestID":"9e60d331c955b4c872733c20816b4721","responseTime":20,"status":200,"url":"/experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwN30.xew0zqKwZSf_1c7YHlXDIxTJS1rSIleGLGtWCbX0Xws","level":"info","message":"auth send jwt","requestID":"0dbe9e102cb4bcd109ec395f240898ef"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0dbe9e102cb4bcd109ec395f240898ef","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8","requestID":"0dbe9e102cb4bcd109ec395f240898ef"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:07Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.330905,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:07Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0dbe9e102cb4bcd109ec395f240898ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615907,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwN30.xew0zqKwZSf_1c7YHlXDIxTJS1rSIleGLGtWCbX0Xws"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0dbe9e102cb4bcd109ec395f240898ef","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8"},"level":"info","message":"Attempting to finish experiment","requestID":"0dbe9e102cb4bcd109ec395f240898ef"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"c7dc1280-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:07Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.216455,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:07Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/960c0cd2-b3b7-4331-85d7-43afc9042504","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c7dc1280-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/960c0cd2-b3b7-4331-85d7-43afc9042504","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615907,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwN30.xew0zqKwZSf_1c7YHlXDIxTJS1rSIleGLGtWCbX0Xws"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c7dc1280-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/960c0cd2-b3b7-4331-85d7-43afc9042504","device":"7738422c-003c-4d6a-a5f2-849f9ceab9d5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"79d4266b-0d59-43eb-928b-6c58cc3765d5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"79d4266b-0d59-43eb-928b-6c58cc3765d5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"79d4266b-0d59-43eb-928b-6c58cc3765d5","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/960c0cd2-b3b7-4331-85d7-43afc9042504' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/960c0cd2-b3b7-4331-85d7-43afc9042504' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"960c0cd2-b3b7-4331-85d7-43afc9042504","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F960c0cd2-b3b7-4331-85d7-43afc9042504': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F960c0cd2-b3b7-4331-85d7-43afc9042504","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"283ddff7-3c0f-4eaf-9dda-58ea5b8d1a95","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615907.268624} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"91c437d0-9390-4af6-bcbb-12e45ebf7a88","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615907.26896} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"83625010873635fd619594a6e3d6f205","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":"83625010873635fd619594a6e3d6f205","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"78288c17f2a0f9277d133f29b5b4c331","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":"c7dc1280-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"78288c17f2a0f9277d133f29b5b4c331","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/960c0cd2-b3b7-4331-85d7-43afc9042504"}}},"level":"info","message":"received a callback","requestID":"83625010873635fd619594a6e3d6f205"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/960c0cd2-b3b7-4331-85d7-43afc9042504"}}},"level":"info","message":"received a callback","requestID":"78288c17f2a0f9277d133f29b5b4c331"} device-1 | {"data":{"peerconnection":"960c0cd2-b3b7-4331-85d7-43afc9042504","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"c7dc1280-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/960c0cd2-b3b7-4331-85d7-43afc9042504 204 53ms","method":"DELETE","requestID":"c7dc1280-50eb-11ef-8434-2f6d198c7397","responseTime":53,"status":204,"url":"/peerconnections/960c0cd2-b3b7-4331-85d7-43afc9042504"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8"},"level":"info","message":"Successfully finished experiment","requestID":"0dbe9e102cb4bcd109ec395f240898ef"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c7e7f960-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:07Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d4266b-0d59-43eb-928b-6c58cc3765d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0ec058dc-51b3-4bc2-a6df-5f4dec6004a4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615907.3256154} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.708636,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c7e7f960-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5","object_type":"device","rebac_allow":false,"scope_allow":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":"c7e7f960-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c7e7f960-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F42444e56-86ee-4e92-9f72-dc51f5c444c8': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F42444e56-86ee-4e92-9f72-dc51f5c444c8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"2f0d973c-1411-43b0-9fa9-8efc7ebdac40","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615907.332569} device-1 | {"level":"info","message":"POST /devices/79d4266b-0d59-43eb-928b-6c58cc3765d5/signaling 200 15ms","method":"POST","requestID":"c7e7f960-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5/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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"56183e0c-19b1-461b-8570-9b3fff3e88a0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615907.3349092} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"0dbe9e102cb4bcd109ec395f240898ef","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c7eadf90-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:07Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7738422c-003c-4d6a-a5f2-849f9ceab9d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ded8b2e0-b51f-410d-a7ff-f898f89d9e21","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615907.344068} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.760132,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c7eadf90-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5","object_type":"device","rebac_allow":false,"scope_allow":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":"c7eadf90-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c7eadf90-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5/signaling 200 15ms","method":"POST","requestID":"c7eadf90-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/7738422c-003c-4d6a-a5f2-849f9ceab9d5/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8","requestID":"0dbe9e102cb4bcd109ec395f240898ef"} gateway-1 | {"time_local":"02/Aug/2024:16:25:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.199","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0dbe9e102cb4bcd109ec395f240898ef"} gateway-1 | {"time_local":"02/Aug/2024:16:25:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3420","request_time":"4.378","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"80a3fc8c67603954dcd9db4552fc7b47"} experiment-1 | {"level":"info","message":"DELETE /experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8 204 195ms","method":"DELETE","requestID":"0dbe9e102cb4bcd109ec395f240898ef","responseTime":195,"status":204,"url":"/experiments/42444e56-86ee-4e92-9f72-dc51f5c444c8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 145ms","method":"POST","requestID":"83625010873635fd619594a6e3d6f205","responseTime":145,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:07 +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":"83625010873635fd619594a6e3d6f205"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 144ms","method":"POST","requestID":"78288c17f2a0f9277d133f29b5b4c331","responseTime":144,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:07 +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":"78288c17f2a0f9277d133f29b5b4c331"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwN30.xew0zqKwZSf_1c7YHlXDIxTJS1rSIleGLGtWCbX0Xws","level":"info","message":"auth send jwt","requestID":"8aba1705426b2d311d6e0fc63e256d34"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8aba1705426b2d311d6e0fc63e256d34","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8aba1705426b2d311d6e0fc63e256d34"} gateway-1 | {"time_local":"02/Aug/2024:16:25:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2886","request_time":"2.918","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":"9b012ee6b6280743578cd6ff6e6355f5"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:07Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.925429,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:07Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/79d4266b-0d59-43eb-928b-6c58cc3765d5' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"8aba1705426b2d311d6e0fc63e256d34","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615907,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwN30.xew0zqKwZSf_1c7YHlXDIxTJS1rSIleGLGtWCbX0Xws"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8aba1705426b2d311d6e0fc63e256d34","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/7738422c-003c-4d6a-a5f2-849f9ceab9d5' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01f20ca1-dffc-4cf5-8726-9983b79952e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"25033c6b-5e83-47fe-8eab-06d5f33858bb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615907.4408963} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8aba1705426b2d311d6e0fc63e256d34","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"89fd356d-ad64-4045-b698-033c05406bfa","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615907.4458005} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"8aba1705426b2d311d6e0fc63e256d34","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01f20ca1-dffc-4cf5-8726-9983b79952e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"4d1a9ec3-d876-4c7e-8c77-d1ed0ec040f7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615907.4556394} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6d4221b6-756d-4380-ab04-a92ff66d4ccc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615907.4558308} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"8aba1705426b2d311d6e0fc63e256d34","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01f20ca1-dffc-4cf5-8726-9983b79952e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01f20ca1-dffc-4cf5-8726-9983b79952e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:07.455620203Z"}]},"request_id":"d7a6a2b3-085d-4cd8-9146-59cbc67fc0fd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615907.4608066} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8aba1705426b2d311d6e0fc63e256d34","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8aba1705426b2d311d6e0fc63e256d34"} gateway-1 | {"time_local":"02/Aug/2024:16:25:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8aba1705426b2d311d6e0fc63e256d34"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"8aba1705426b2d311d6e0fc63e256d34","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwN30.xew0zqKwZSf_1c7YHlXDIxTJS1rSIleGLGtWCbX0Xws","level":"info","message":"auth send jwt","requestID":"8db9e146c720031c97a0df1001738ec1"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8db9e146c720031c97a0df1001738ec1","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8db9e146c720031c97a0df1001738ec1"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:07Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.913913,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:07Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"8db9e146c720031c97a0df1001738ec1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615907,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwN30.xew0zqKwZSf_1c7YHlXDIxTJS1rSIleGLGtWCbX0Xws"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8db9e146c720031c97a0df1001738ec1","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff53ed35a-dc5d-4cbe-8222-62c1546e28ca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"475c8748-abbc-40cd-89d7-84aa7b675283","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615907.4886963} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8db9e146c720031c97a0df1001738ec1","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5546b88f-3f67-4e6b-8fdf-33a6637fc568","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615907.4936411} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"8db9e146c720031c97a0df1001738ec1","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff53ed35a-dc5d-4cbe-8222-62c1546e28ca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"c687a087-0ab4-4eb0-b383-30e92ffd67cb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615907.5048676} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e54e7ecd-8926-4a2b-bb4b-100fb4e28884","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615907.5051646} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"8db9e146c720031c97a0df1001738ec1","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff53ed35a-dc5d-4cbe-8222-62c1546e28ca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff53ed35a-dc5d-4cbe-8222-62c1546e28ca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:07.504833515Z"}]},"request_id":"4acfea26-1aa4-4d7d-b296-0311b87ef9c6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615907.509385} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8db9e146c720031c97a0df1001738ec1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8db9e146c720031c97a0df1001738ec1"} gateway-1 | {"time_local":"02/Aug/2024:16:25:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8db9e146c720031c97a0df1001738ec1"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"8db9e146c720031c97a0df1001738ec1","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f9d8ddffd0d296f2aca21743163c1740","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":"f9d8ddffd0d296f2aca21743163c1740","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca/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":"f9d8ddffd0d296f2aca21743163c1740"} device-1 | {"level":"info","message":"OPTIONS /devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca/websocket 200 1ms","method":"OPTIONS","requestID":"f9d8ddffd0d296f2aca21743163c1740","responseTime":1,"status":200,"url":"/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM","level":"info","message":"auth send jwt","requestID":"e99f30dc8f75b2e85446d9d789f36361"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e99f30dc8f75b2e85446d9d789f36361","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e99f30dc8f75b2e85446d9d789f36361"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.852569,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e99f30dc8f75b2e85446d9d789f36361","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615909,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e99f30dc8f75b2e85446d9d789f36361","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"84d65c107a2c378775dcd5d785039301","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":"84d65c107a2c378775dcd5d785039301","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/01f20ca1-dffc-4cf5-8726-9983b79952e9/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":"84d65c107a2c378775dcd5d785039301"} device-1 | {"level":"info","message":"OPTIONS /devices/01f20ca1-dffc-4cf5-8726-9983b79952e9/websocket 200 1ms","method":"OPTIONS","requestID":"84d65c107a2c378775dcd5d785039301","responseTime":1,"status":200,"url":"/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM","level":"info","message":"auth send jwt","requestID":"d3f7f294c92c2cba8e3aa1f45ed8114b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d3f7f294c92c2cba8e3aa1f45ed8114b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d3f7f294c92c2cba8e3aa1f45ed8114b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e99f30dc8f75b2e85446d9d789f36361"} gateway-1 | {"time_local":"02/Aug/2024:16:25:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca/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":"e99f30dc8f75b2e85446d9d789f36361"} device-1 | {"level":"info","message":"POST /devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca/websocket 200 23ms","method":"POST","requestID":"e99f30dc8f75b2e85446d9d789f36361","responseTime":23,"status":200,"url":"/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca/websocket"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.960392,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d3f7f294c92c2cba8e3aa1f45ed8114b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615909,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d3f7f294c92c2cba8e3aa1f45ed8114b","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d3f7f294c92c2cba8e3aa1f45ed8114b"} gateway-1 | {"time_local":"02/Aug/2024:16:25:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/01f20ca1-dffc-4cf5-8726-9983b79952e9/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":"d3f7f294c92c2cba8e3aa1f45ed8114b"} device-1 | {"level":"info","message":"POST /devices/01f20ca1-dffc-4cf5-8726-9983b79952e9/websocket 200 18ms","method":"POST","requestID":"d3f7f294c92c2cba8e3aa1f45ed8114b","responseTime":18,"status":200,"url":"/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8fb4229d178b04dcb4a05018431ba105","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":"8fb4229d178b04dcb4a05018431ba105","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"8fb4229d178b04dcb4a05018431ba105"} device-1 | {"level":"info","message":"OPTIONS /devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca? 200 0ms","method":"OPTIONS","requestID":"8fb4229d178b04dcb4a05018431ba105","responseTime":0,"status":200,"url":"/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM","level":"info","message":"auth send jwt","requestID":"1283738635868fb7ce0429eed28f64c4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1283738635868fb7ce0429eed28f64c4","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6041a9900ab87b78b2aa026ce633254b","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":"6041a9900ab87b78b2aa026ce633254b","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"1283738635868fb7ce0429eed28f64c4"} gateway-1 | {"time_local":"02/Aug/2024:16:25:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/01f20ca1-dffc-4cf5-8726-9983b79952e9? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"6041a9900ab87b78b2aa026ce633254b"} device-1 | {"level":"info","message":"OPTIONS /devices/01f20ca1-dffc-4cf5-8726-9983b79952e9? 200 1ms","method":"OPTIONS","requestID":"6041a9900ab87b78b2aa026ce633254b","responseTime":1,"status":200,"url":"/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.771159,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1283738635868fb7ce0429eed28f64c4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615909,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1283738635868fb7ce0429eed28f64c4","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM","level":"info","message":"auth send jwt","requestID":"a723a40605804345a1bfe4f563325479"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a723a40605804345a1bfe4f563325479","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a723a40605804345a1bfe4f563325479"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff53ed35a-dc5d-4cbe-8222-62c1546e28ca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff53ed35a-dc5d-4cbe-8222-62c1546e28ca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:07.504833515Z"}]},"request_id":"a723046c-d598-4d3a-b228-1260c31d7c3e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.5624404} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1283738635868fb7ce0429eed28f64c4","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.900886,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a723a40605804345a1bfe4f563325479","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615909,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a723a40605804345a1bfe4f563325479","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1a34c351-396a-4e89-a1f6-3bcf9fc1528c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.5701253} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1283738635868fb7ce0429eed28f64c4","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01f20ca1-dffc-4cf5-8726-9983b79952e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01f20ca1-dffc-4cf5-8726-9983b79952e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:07.455620203Z"}]},"request_id":"fe9a513a-360b-49a3-9513-235dec3fcb89","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.5749056} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a723a40605804345a1bfe4f563325479","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4167e3d5-0a6d-43c0-bd4d-11943c125d30","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.5807705} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a723a40605804345a1bfe4f563325479","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff53ed35a-dc5d-4cbe-8222-62c1546e28ca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff53ed35a-dc5d-4cbe-8222-62c1546e28ca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:07.504833515Z"}]},"request_id":"a0354df9-375d-4e93-b662-8c4e15b1b5a9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.590037} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1283738635868fb7ce0429eed28f64c4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"1283738635868fb7ce0429eed28f64c4"} gateway-1 | {"time_local":"02/Aug/2024:16:25:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.049","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":"1283738635868fb7ce0429eed28f64c4"} device-1 | {"level":"info","message":"PATCH /devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca? 200 43ms","method":"PATCH","requestID":"1283738635868fb7ce0429eed28f64c4","responseTime":43,"status":200,"url":"/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01f20ca1-dffc-4cf5-8726-9983b79952e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01f20ca1-dffc-4cf5-8726-9983b79952e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:07.455620203Z"}]},"request_id":"a32940d1-d421-4e72-a6e6-8965cd7fe2f4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.602054} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a723a40605804345a1bfe4f563325479","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a723a40605804345a1bfe4f563325479"} gateway-1 | {"time_local":"02/Aug/2024:16:25:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/01f20ca1-dffc-4cf5-8726-9983b79952e9? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.050","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":"a723a40605804345a1bfe4f563325479"} device-1 | {"level":"info","message":"PATCH /devices/01f20ca1-dffc-4cf5-8726-9983b79952e9? 200 44ms","method":"PATCH","requestID":"a723a40605804345a1bfe4f563325479","responseTime":44,"status":200,"url":"/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM","level":"info","message":"auth send jwt","requestID":"52168fbbd8da43eb8ee31f280269dcc3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"52168fbbd8da43eb8ee31f280269dcc3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"52168fbbd8da43eb8ee31f280269dcc3"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.945899,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"52168fbbd8da43eb8ee31f280269dcc3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615909,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"52168fbbd8da43eb8ee31f280269dcc3","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01f20ca1-dffc-4cf5-8726-9983b79952e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01f20ca1-dffc-4cf5-8726-9983b79952e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:07.455620203Z"}]},"request_id":"d36dd085-608c-4707-89c9-744826c311a7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.625229} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"52168fbbd8da43eb8ee31f280269dcc3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"52168fbbd8da43eb8ee31f280269dcc3"} gateway-1 | {"time_local":"02/Aug/2024:16:25:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/01f20ca1-dffc-4cf5-8726-9983b79952e9? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"52168fbbd8da43eb8ee31f280269dcc3"} device-1 | {"level":"info","message":"GET /devices/01f20ca1-dffc-4cf5-8726-9983b79952e9? 200 14ms","method":"GET","requestID":"52168fbbd8da43eb8ee31f280269dcc3","responseTime":14,"status":200,"url":"/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM","level":"info","message":"auth send jwt","requestID":"dc9640a22376773b26d6eb235cfd7631"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"dc9640a22376773b26d6eb235cfd7631","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dc9640a22376773b26d6eb235cfd7631"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.293679,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dc9640a22376773b26d6eb235cfd7631","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615909,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dc9640a22376773b26d6eb235cfd7631","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff53ed35a-dc5d-4cbe-8222-62c1546e28ca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff53ed35a-dc5d-4cbe-8222-62c1546e28ca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:07.504833515Z"}]},"request_id":"35064190-5ca1-4d03-99e4-0b91cac63602","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.64731} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dc9640a22376773b26d6eb235cfd7631","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dc9640a22376773b26d6eb235cfd7631"} gateway-1 | {"time_local":"02/Aug/2024:16:25:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dc9640a22376773b26d6eb235cfd7631"} device-1 | {"level":"info","message":"GET /devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca? 200 15ms","method":"GET","requestID":"dc9640a22376773b26d6eb235cfd7631","responseTime":15,"status":200,"url":"/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM","level":"info","message":"auth send jwt","requestID":"87f6dc64906ef89f60f32588b76d1948"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"87f6dc64906ef89f60f32588b76d1948","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"87f6dc64906ef89f60f32588b76d1948"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.006873,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"87f6dc64906ef89f60f32588b76d1948","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615909,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"87f6dc64906ef89f60f32588b76d1948","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57"},"level":"info","message":"Attempting to run experiment","requestID":"87f6dc64906ef89f60f32588b76d1948"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57"},"level":"info","message":"Attempting to book experiment","requestID":"87f6dc64906ef89f60f32588b76d1948"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57"},"level":"info","message":"Successfully booked experiment","requestID":"87f6dc64906ef89f60f32588b76d1948"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c953e570-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c9540c80-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.741682,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c953e570-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615909,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c953e570-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51328","level":"info","msg":"Received request.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51328","level":"info","msg":"Sent response.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.816372,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c9540c80-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615909,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c9540c80-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01f20ca1-dffc-4cf5-8726-9983b79952e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01f20ca1-dffc-4cf5-8726-9983b79952e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:07.455620203Z"}]},"request_id":"821d7184-7f90-4526-a0e4-2d58e3c88e39","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.7118006} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c953e570-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff53ed35a-dc5d-4cbe-8222-62c1546e28ca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff53ed35a-dc5d-4cbe-8222-62c1546e28ca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:07.504833515Z"}]},"request_id":"df6d845a-65c6-496f-9009-bae776804d10","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.7161744} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c953e570-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c9540c80-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/01f20ca1-dffc-4cf5-8726-9983b79952e9? 200 14ms","method":"GET","requestID":"c953e570-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c9540c80-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca? 200 16ms","method":"GET","requestID":"c9540c80-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57"},"level":"info","message":"Setting up experiment","requestID":"87f6dc64906ef89f60f32588b76d1948"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"87f6dc64906ef89f60f32588b76d1948"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57"},"level":"info","message":"Successfully locked booking for experiment","requestID":"87f6dc64906ef89f60f32588b76d1948"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"87f6dc64906ef89f60f32588b76d1948"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"87f6dc64906ef89f60f32588b76d1948"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57"},"level":"info","message":"Attempting to update booking for experiment","requestID":"87f6dc64906ef89f60f32588b76d1948"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57"},"level":"info","message":"Successfully updated booking for experiment","requestID":"87f6dc64906ef89f60f32588b76d1948"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57"},"level":"info","message":"Successfully set up experiment","requestID":"87f6dc64906ef89f60f32588b76d1948"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c9601a70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c9604180-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c9606890-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57"},"level":"info","message":"Successfully running experiment","requestID":"87f6dc64906ef89f60f32588b76d1948"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.93962,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51328","level":"info","msg":"Received request.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c9601a70-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615909,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c9601a70-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51328","level":"info","msg":"Sent response.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.101473,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c9604180-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615909,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c9604180-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51334","level":"info","msg":"Received request.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51334","level":"info","msg":"Sent response.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.318962,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01f20ca1-dffc-4cf5-8726-9983b79952e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"257411fa-c826-461d-9078-0b741c4c7a49","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.7951865} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01f20ca1-dffc-4cf5-8726-9983b79952e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01f20ca1-dffc-4cf5-8726-9983b79952e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:07.455620203Z"}]},"request_id":"4788c38f-f25b-4e1c-b659-698aaf6c95f9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.7952688} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c9601a70-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c9606890-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9","object_type":"device","rebac_allow":false,"scope_allow":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":"c9606890-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff53ed35a-dc5d-4cbe-8222-62c1546e28ca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff53ed35a-dc5d-4cbe-8222-62c1546e28ca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:07.504833515Z"}]},"request_id":"386561ac-418b-45cb-b502-0d6399740f3c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.797828} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"c9604180-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb6195d0c-4ec1-47d1-8aeb-e791a311da57#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb6195d0c-4ec1-47d1-8aeb-e791a311da57","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"41a46659-fe11-460f-baa3-3ec2025099d3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.8026917} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e31d8679-fdf1-4617-b138-419e92cd8001","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.8029397} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"87f6dc64906ef89f60f32588b76d1948","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c9601a70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/01f20ca1-dffc-4cf5-8726-9983b79952e9? 200 24ms","method":"GET","requestID":"c9601a70-50eb-11ef-8434-2f6d198c7397","responseTime":24,"status":200,"url":"/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c9606890-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/01f20ca1-dffc-4cf5-8726-9983b79952e9/signaling 200 23ms","method":"POST","requestID":"c9606890-50eb-11ef-8434-2f6d198c7397","responseTime":23,"status":200,"url":"/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c9604180-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca? 200 25ms","method":"GET","requestID":"c9604180-50eb-11ef-8434-2f6d198c7397","responseTime":25,"status":200,"url":"/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c9646030-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:09Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c9652380-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"87f6dc64906ef89f60f32588b76d1948"} gateway-1 | {"time_local":"02/Aug/2024:16:25:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"778","request_time":"0.164","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"87f6dc64906ef89f60f32588b76d1948"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff53ed35a-dc5d-4cbe-8222-62c1546e28ca","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b95f0703-cf25-4957-a2f3-8fd35cbe324e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.8170333} experiment-1 | {"level":"info","message":"POST /experiments? 201 157ms","method":"POST","requestID":"87f6dc64906ef89f60f32588b76d1948","responseTime":157,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.637231,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51328","level":"info","msg":"Received request.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c9646030-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca","object_type":"device","rebac_allow":false,"scope_allow":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":"c9646030-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01f20ca1-dffc-4cf5-8726-9983b79952e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6f04066d-5437-4283-baee-d74aa9de36b2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.8204978} authorization-1 | {"client_addr":"127.0.0.1:51328","level":"info","msg":"Sent response.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.445249,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:09Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM","level":"info","message":"auth send jwt","requestID":"063285ef85eaa06c522d84b1efc5ffaa"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c9652380-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9","object_type":"device","rebac_allow":false,"scope_allow":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":"c9652380-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"063285ef85eaa06c522d84b1efc5ffaa","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c9646030-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca/signaling 200 11ms","method":"POST","requestID":"c9646030-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"063285ef85eaa06c522d84b1efc5ffaa"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c9652380-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/01f20ca1-dffc-4cf5-8726-9983b79952e9/signaling 200 10ms","method":"POST","requestID":"c9652380-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.420768,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"063285ef85eaa06c522d84b1efc5ffaa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615909,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c9671f50-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"063285ef85eaa06c522d84b1efc5ffaa","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01f20ca1-dffc-4cf5-8726-9983b79952e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01f20ca1-dffc-4cf5-8726-9983b79952e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:07.455620203Z"}]},"request_id":"1c51c1b4-c0f3-47d8-8198-0248832594e6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.8331776} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff53ed35a-dc5d-4cbe-8222-62c1546e28ca","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"057711d1-3659-4586-9b04-0cde6bf5bfd1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.8333282} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"063285ef85eaa06c522d84b1efc5ffaa","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.703175,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c9671f50-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca","object_type":"device","rebac_allow":false,"scope_allow":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":"c9671f50-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"063285ef85eaa06c522d84b1efc5ffaa"} gateway-1 | {"time_local":"02/Aug/2024:16:25:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/01f20ca1-dffc-4cf5-8726-9983b79952e9? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"063285ef85eaa06c522d84b1efc5ffaa"} device-1 | {"level":"info","message":"GET /devices/01f20ca1-dffc-4cf5-8726-9983b79952e9? 200 15ms","method":"GET","requestID":"063285ef85eaa06c522d84b1efc5ffaa","responseTime":15,"status":200,"url":"/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c9671f50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca/signaling 200 11ms","method":"POST","requestID":"c9671f50-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"87f6dc64906ef89f60f32588b76d1948"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c9691b20-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c9696940-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM","level":"info","message":"auth send jwt","requestID":"5b954bea13b012866457e4342b9f4fe0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5b954bea13b012866457e4342b9f4fe0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5b954bea13b012866457e4342b9f4fe0"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.07562,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51328","level":"info","msg":"Received request.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c9691b20-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615909,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c9691b20-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51328","level":"info","msg":"Sent response.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.784083,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51334","level":"info","msg":"Received request.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c9696940-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615909,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c9696940-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51334","level":"info","msg":"Sent response.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.835125,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"5b954bea13b012866457e4342b9f4fe0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615909,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5b954bea13b012866457e4342b9f4fe0","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01f20ca1-dffc-4cf5-8726-9983b79952e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01f20ca1-dffc-4cf5-8726-9983b79952e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:07.455620203Z"}]},"request_id":"9c898b81-c81e-484b-9353-bf9c7103d1b8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.8540144} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c9691b20-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff53ed35a-dc5d-4cbe-8222-62c1546e28ca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff53ed35a-dc5d-4cbe-8222-62c1546e28ca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:07.504833515Z"}]},"request_id":"8ca7bbc1-8bc3-467a-a17f-45f3b077b69f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.856998} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c9691b20-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c9696940-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/01f20ca1-dffc-4cf5-8726-9983b79952e9? 200 18ms","method":"GET","requestID":"c9691b20-50eb-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff53ed35a-dc5d-4cbe-8222-62c1546e28ca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff53ed35a-dc5d-4cbe-8222-62c1546e28ca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:07.504833515Z"}]},"request_id":"0d34d67e-0faf-4bbf-a4e4-5520d7d55a69","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.8595312} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5b954bea13b012866457e4342b9f4fe0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c9696940-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca? 200 19ms","method":"GET","requestID":"c9696940-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5b954bea13b012866457e4342b9f4fe0"} gateway-1 | {"time_local":"02/Aug/2024:16:25:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5b954bea13b012866457e4342b9f4fe0"} device-1 | {"level":"info","message":"GET /devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca? 200 19ms","method":"GET","requestID":"5b954bea13b012866457e4342b9f4fe0","responseTime":19,"status":200,"url":"/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57"},"level":"info","message":"Building connection plan","requestID":"87f6dc64906ef89f60f32588b76d1948"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"d73af536-4ce1-4302-a650-326ec644b755"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"422c8c6d-af88-4cf5-9304-e901d0ec8c76"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"ce97f76b-473c-445e-b0b7-1b254996ca88"}]},"level":"info","message":"Built pairwise service configurations","requestID":"87f6dc64906ef89f60f32588b76d1948"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"87f6dc64906ef89f60f32588b76d1948"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"c96cc4a0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.7767,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c96cc4a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615909,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkwOX0.urLyxN53CbKu1_lLqoryKZi8Ez8uYQKAmrMveJUlcXM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c96cc4a0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"af66cc71-43ff-4676-a451-9fc3ec4029b9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.877775} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f80a37bb-811e-409e-a11f-83926fd3a308","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.878012} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c96cc4a0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"c96cc4a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"c96cc4a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/64e2579c-4c5d-41ba-8874-ba2b95847622'","requestID":"c96cc4a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/64e2579c-4c5d-41ba-8874-ba2b95847622'","requestID":"c96cc4a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"c96cc4a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"c96cc4a0-50eb-11ef-8434-2f6d198c7397","responseTime":25,"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":"c96cc4a0-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"87f6dc64906ef89f60f32588b76d1948"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c974daf0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01f20ca1-dffc-4cf5-8726-9983b79952e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0929a4d3-1168-49cc-89b4-cc8096ebe865","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.923411} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":1.934374,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c974daf0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9","object_type":"device","rebac_allow":false,"scope_allow":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":"c974daf0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c974daf0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/01f20ca1-dffc-4cf5-8726-9983b79952e9/signaling 200 8ms","method":"POST","requestID":"c974daf0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c9766190-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff53ed35a-dc5d-4cbe-8222-62c1546e28ca","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"83d9ee88-dfa1-4363-8de2-b6bafb8cea1d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615909.9334643} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.170527,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c9766190-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca","object_type":"device","rebac_allow":false,"scope_allow":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":"c9766190-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c9766190-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca/signaling 200 8ms","method":"POST","requestID":"c9766190-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca/signaling"} device-1 | {"device":"01f20ca1-dffc-4cf5-8726-9983b79952e9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"01f20ca1-dffc-4cf5-8726-9983b79952e9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"f53ed35a-dc5d-4cbe-8222-62c1546e28ca","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"f53ed35a-dc5d-4cbe-8222-62c1546e28ca","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 6275976690007549251 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:CyFl\r\na=ice-pwd:rPcMOKUt5MiokZPFedBbJjG3\r\na=ice-options:trickle\r\na=fingerprint:sha-256 26:8C:C9:10:CA:99:45:DE:FF:76:EB:7F:47:F0:5D:BC:56:F8:45:0A:13:6E:70:66:FA:4D:88:91:BE:4E:AC:F1\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"01f20ca1-dffc-4cf5-8726-9983b79952e9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 7382066764104791010 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:D7lr\r\na=ice-pwd:aszQsW6tCDrbNbes+TPqrYI1\r\na=ice-options:trickle\r\na=fingerprint:sha-256 EB:58:7D:58:5E:92:B9:6B:F3:DD:B5:CF:81:65:FB:C0:A6:A5:81:E6:0D:B1:DD:3A:1E:72:80:B5:C7:CE:3A:19\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"f53ed35a-dc5d-4cbe-8222-62c1546e28ca","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3365172639 1 udp 2113937151 5ef3645d-12e0-4b0c-a92f-028b971bd524.local 36973 typ host generation 0 ufrag D7lr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f53ed35a-dc5d-4cbe-8222-62c1546e28ca","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3449584327 1 udp 1677729535 141.24.211.56 36973 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag D7lr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f53ed35a-dc5d-4cbe-8222-62c1546e28ca","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca'"} device-1 | {"content":{"candidate":"candidate:2411005266 1 udp 2113937151 23be7148-2070-4d83-83b0-de5e3127bdc9.local 55791 typ host generation 0 ufrag CyFl network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"01f20ca1-dffc-4cf5-8726-9983b79952e9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2280476309 1 udp 1677729535 141.24.211.56 55791 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag CyFl network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"01f20ca1-dffc-4cf5-8726-9983b79952e9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9'"} device-1 | {"device":"01f20ca1-dffc-4cf5-8726-9983b79952e9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"f53ed35a-dc5d-4cbe-8222-62c1546e28ca","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/64e2579c-4c5d-41ba-8874-ba2b95847622' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"64e2579c-4c5d-41ba-8874-ba2b95847622","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"f53ed35a-dc5d-4cbe-8222-62c1546e28ca","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"01f20ca1-dffc-4cf5-8726-9983b79952e9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b282e7feea6b0c65d1b5783cee0d6223","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":"b282e7feea6b0c65d1b5783cee0d6223","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/64e2579c-4c5d-41ba-8874-ba2b95847622"}}},"level":"info","message":"received a callback","requestID":"b282e7feea6b0c65d1b5783cee0d6223"} device-1 | {"device":"01f20ca1-dffc-4cf5-8726-9983b79952e9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"f53ed35a-dc5d-4cbe-8222-62c1546e28ca","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"b282e7feea6b0c65d1b5783cee0d6223","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:09 +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":"b282e7feea6b0c65d1b5783cee0d6223"} device-1 | {"device":"f53ed35a-dc5d-4cbe-8222-62c1546e28ca","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"64e2579c-4c5d-41ba-8874-ba2b95847622","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"64e2579c-4c5d-41ba-8874-ba2b95847622","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/64e2579c-4c5d-41ba-8874-ba2b95847622' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"64e2579c-4c5d-41ba-8874-ba2b95847622","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"315d801dbbaca3485d800760d14425a5","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":"315d801dbbaca3485d800760d14425a5","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/64e2579c-4c5d-41ba-8874-ba2b95847622"}}},"level":"info","message":"received a callback","requestID":"315d801dbbaca3485d800760d14425a5"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"c9846b50-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:10Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F64e2579c-4c5d-41ba-8874-ba2b95847622","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fdd5925c-3c7e-49a2-bc2d-c775ce9d769f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615910.0265322} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.471875,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/64e2579c-4c5d-41ba-8874-ba2b95847622","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c9846b50-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/64e2579c-4c5d-41ba-8874-ba2b95847622","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":"c9846b50-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"c9846b50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/64e2579c-4c5d-41ba-8874-ba2b95847622 200 10ms","method":"GET","requestID":"c9846b50-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/peerconnections/64e2579c-4c5d-41ba-8874-ba2b95847622"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 35ms","method":"POST","requestID":"315d801dbbaca3485d800760d14425a5","responseTime":35,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:10 +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":"315d801dbbaca3485d800760d14425a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c988d820-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:10Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff53ed35a-dc5d-4cbe-8222-62c1546e28ca","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e2a57af6-949a-4aca-81db-22654d59e6cd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615910.054304} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.302699,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c988d820-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca","object_type":"device","rebac_allow":false,"scope_allow":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":"c988d820-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c988d820-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca/signaling 200 9ms","method":"POST","requestID":"c988d820-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c98a85d0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:10Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01f20ca1-dffc-4cf5-8726-9983b79952e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"699c7f8e-c23a-4023-9c5e-666117355da5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615910.0674102} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.642054,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c98a85d0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9","object_type":"device","rebac_allow":false,"scope_allow":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":"c98a85d0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c98a85d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/01f20ca1-dffc-4cf5-8726-9983b79952e9/signaling 200 12ms","method":"POST","requestID":"c98a85d0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMH0.I8Ba6aYQRqi6RvPdM9y9Kjf8Exdtyo5eZ4-XeLGdqWg","level":"info","message":"auth send jwt","requestID":"308591e2b3dfea1c5693866e26c5d1ae"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"308591e2b3dfea1c5693866e26c5d1ae","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57","requestID":"308591e2b3dfea1c5693866e26c5d1ae"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:10Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.162842,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"308591e2b3dfea1c5693866e26c5d1ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615910,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMH0.I8Ba6aYQRqi6RvPdM9y9Kjf8Exdtyo5eZ4-XeLGdqWg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"308591e2b3dfea1c5693866e26c5d1ae","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57","requestID":"308591e2b3dfea1c5693866e26c5d1ae"} gateway-1 | {"time_local":"02/Aug/2024:16:25:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57 HTTP/1.1","status": "200","body_bytes_sent":"851","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"308591e2b3dfea1c5693866e26c5d1ae"} experiment-1 | {"level":"info","message":"GET /experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57 200 17ms","method":"GET","requestID":"308591e2b3dfea1c5693866e26c5d1ae","responseTime":17,"status":200,"url":"/experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMH0.I8Ba6aYQRqi6RvPdM9y9Kjf8Exdtyo5eZ4-XeLGdqWg","level":"info","message":"auth send jwt","requestID":"bc1ca0adbe0a3c7f4612989fe5eb1cbf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bc1ca0adbe0a3c7f4612989fe5eb1cbf","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57","requestID":"bc1ca0adbe0a3c7f4612989fe5eb1cbf"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:10Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.338458,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:10Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bc1ca0adbe0a3c7f4612989fe5eb1cbf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615910,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMH0.I8Ba6aYQRqi6RvPdM9y9Kjf8Exdtyo5eZ4-XeLGdqWg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bc1ca0adbe0a3c7f4612989fe5eb1cbf","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57"},"level":"info","message":"Attempting to finish experiment","requestID":"bc1ca0adbe0a3c7f4612989fe5eb1cbf"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"c9abf080-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:10Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.212489,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:10Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/64e2579c-4c5d-41ba-8874-ba2b95847622","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c9abf080-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/64e2579c-4c5d-41ba-8874-ba2b95847622","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615910,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMH0.I8Ba6aYQRqi6RvPdM9y9Kjf8Exdtyo5eZ4-XeLGdqWg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c9abf080-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/64e2579c-4c5d-41ba-8874-ba2b95847622","device":"f53ed35a-dc5d-4cbe-8222-62c1546e28ca","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/64e2579c-4c5d-41ba-8874-ba2b95847622","device":"01f20ca1-dffc-4cf5-8726-9983b79952e9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/64e2579c-4c5d-41ba-8874-ba2b95847622' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/64e2579c-4c5d-41ba-8874-ba2b95847622' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"64e2579c-4c5d-41ba-8874-ba2b95847622","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F64e2579c-4c5d-41ba-8874-ba2b95847622': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F64e2579c-4c5d-41ba-8874-ba2b95847622","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"5cfdd845-ec45-4300-9b04-064e3c7237be","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615910.325211} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e499812e2fc21cbb507b75deac01b6fe","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b0852009-da88-4032-b5cc-a9020882dc70","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615910.3254483} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e499812e2fc21cbb507b75deac01b6fe","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/64e2579c-4c5d-41ba-8874-ba2b95847622"}}},"level":"info","message":"received a callback","requestID":"e499812e2fc21cbb507b75deac01b6fe"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a81995174e8742f2009b2960562f6e34","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":"a81995174e8742f2009b2960562f6e34","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"c9abf080-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/64e2579c-4c5d-41ba-8874-ba2b95847622"}}},"level":"info","message":"received a callback","requestID":"a81995174e8742f2009b2960562f6e34"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"c9abf080-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/64e2579c-4c5d-41ba-8874-ba2b95847622 204 65ms","method":"DELETE","requestID":"c9abf080-50eb-11ef-8434-2f6d198c7397","responseTime":65,"status":204,"url":"/peerconnections/64e2579c-4c5d-41ba-8874-ba2b95847622"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57"},"level":"info","message":"Successfully finished experiment","requestID":"bc1ca0adbe0a3c7f4612989fe5eb1cbf"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c9b95e00-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:10Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff53ed35a-dc5d-4cbe-8222-62c1546e28ca","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"947c7792-39d3-4bd0-9b6e-676d1bf2e458","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615910.3729951} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.548715,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c9b95e00-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca","object_type":"device","rebac_allow":false,"scope_allow":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":"c9b95e00-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c9b95e00-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca/signaling 200 10ms","method":"POST","requestID":"c9b95e00-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/f53ed35a-dc5d-4cbe-8222-62c1546e28ca/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb6195d0c-4ec1-47d1-8aeb-e791a311da57': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb6195d0c-4ec1-47d1-8aeb-e791a311da57","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"fcf0717a-f05d-43e0-8647-b825275a8df8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615910.380429} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f4e6cfab-e5ac-4346-97d8-e4161326d854","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615910.380606} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c9bb59d0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"bc1ca0adbe0a3c7f4612989fe5eb1cbf","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:10Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01f20ca1-dffc-4cf5-8726-9983b79952e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8c69b42b-4ceb-4eda-aff4-ba18127f86fb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615910.3851428} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.494155,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c9bb59d0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9","object_type":"device","rebac_allow":false,"scope_allow":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":"c9bb59d0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c9bb59d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/01f20ca1-dffc-4cf5-8726-9983b79952e9/signaling 200 10ms","method":"POST","requestID":"c9bb59d0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57","requestID":"bc1ca0adbe0a3c7f4612989fe5eb1cbf"} gateway-1 | {"time_local":"02/Aug/2024:16:25:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57 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":"bc1ca0adbe0a3c7f4612989fe5eb1cbf"} experiment-1 | {"level":"info","message":"DELETE /experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57 204 182ms","method":"DELETE","requestID":"bc1ca0adbe0a3c7f4612989fe5eb1cbf","responseTime":182,"status":204,"url":"/experiments/b6195d0c-4ec1-47d1-8aeb-e791a311da57"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"e499812e2fc21cbb507b75deac01b6fe","responseTime":119,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:10 +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.123","http_referrer":"","http_user_agent":"node-fetch","requestID":"e499812e2fc21cbb507b75deac01b6fe"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"a81995174e8742f2009b2960562f6e34","responseTime":119,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:10 +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.124","http_referrer":"","http_user_agent":"node-fetch","requestID":"a81995174e8742f2009b2960562f6e34"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMH0.I8Ba6aYQRqi6RvPdM9y9Kjf8Exdtyo5eZ4-XeLGdqWg","level":"info","message":"auth send jwt","requestID":"702c2d4905e5405cc37b1cdcc07d03f0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"702c2d4905e5405cc37b1cdcc07d03f0","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"702c2d4905e5405cc37b1cdcc07d03f0"} gateway-1 | {"time_local":"02/Aug/2024:16:25:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2974","request_time":"0.948","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":"74f3140af2c57f5bb2f7cd05c3ceda00"} gateway-1 | {"time_local":"02/Aug/2024:16:25:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2974","request_time":"0.935","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":"857d3cfa62e34344e6ef5682d32ccc18"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:10Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.007745,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"702c2d4905e5405cc37b1cdcc07d03f0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615910,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMH0.I8Ba6aYQRqi6RvPdM9y9Kjf8Exdtyo5eZ4-XeLGdqWg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"702c2d4905e5405cc37b1cdcc07d03f0","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/f53ed35a-dc5d-4cbe-8222-62c1546e28ca' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/01f20ca1-dffc-4cf5-8726-9983b79952e9' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82ed0972-ade9-4c39-a4d4-797afee3e729","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2a0f9aa8-bcdd-42aa-b1f0-95c272eb1159","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615910.4802477} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"702c2d4905e5405cc37b1cdcc07d03f0","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3ae26450-6f48-4f2e-b726-b23b140d913e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615910.4849966} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"702c2d4905e5405cc37b1cdcc07d03f0","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82ed0972-ade9-4c39-a4d4-797afee3e729","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"7ff0bf40-8818-4f24-b675-a2e0fd53697a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615910.4962149} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bc3c02b2-ba7b-473e-a206-21e85de22e2a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615910.496271} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"702c2d4905e5405cc37b1cdcc07d03f0","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82ed0972-ade9-4c39-a4d4-797afee3e729","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82ed0972-ade9-4c39-a4d4-797afee3e729","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:10.496187106Z"}]},"request_id":"e63917e6-e336-456c-971c-1d2165eaa8a4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615910.5002902} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"702c2d4905e5405cc37b1cdcc07d03f0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"702c2d4905e5405cc37b1cdcc07d03f0"} gateway-1 | {"time_local":"02/Aug/2024:16:25:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"702c2d4905e5405cc37b1cdcc07d03f0"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"702c2d4905e5405cc37b1cdcc07d03f0","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMH0.I8Ba6aYQRqi6RvPdM9y9Kjf8Exdtyo5eZ4-XeLGdqWg","level":"info","message":"auth send jwt","requestID":"95124d7950e2e4c6ae09f778ffc70e47"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"95124d7950e2e4c6ae09f778ffc70e47","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"95124d7950e2e4c6ae09f778ffc70e47"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:10Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.789299,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"95124d7950e2e4c6ae09f778ffc70e47","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615910,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMH0.I8Ba6aYQRqi6RvPdM9y9Kjf8Exdtyo5eZ4-XeLGdqWg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"95124d7950e2e4c6ae09f778ffc70e47","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc42c4ed8-ef5f-4269-a842-62bbded0a990","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c3fb5f5a-4914-4859-b993-ba13479a5067","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615910.524031} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"95124d7950e2e4c6ae09f778ffc70e47","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"99cd5013-65a1-40b5-b28c-20789370ff2b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615910.5284586} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"95124d7950e2e4c6ae09f778ffc70e47","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc42c4ed8-ef5f-4269-a842-62bbded0a990","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"be6229bf-2bfb-422d-934a-3a32c975a20d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615910.536956} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"213f33bc-f981-4eac-a901-d3f8794bff97","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615910.5371296} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"95124d7950e2e4c6ae09f778ffc70e47","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc42c4ed8-ef5f-4269-a842-62bbded0a990","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc42c4ed8-ef5f-4269-a842-62bbded0a990","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:10.536935552Z"}]},"request_id":"3bddb183-3f2b-4279-a35f-01ebf3ad454a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615910.5412192} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"95124d7950e2e4c6ae09f778ffc70e47","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"95124d7950e2e4c6ae09f778ffc70e47"} gateway-1 | {"time_local":"02/Aug/2024:16:25:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.040","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"95124d7950e2e4c6ae09f778ffc70e47"} device-1 | {"level":"info","message":"POST /devices? 201 36ms","method":"POST","requestID":"95124d7950e2e4c6ae09f778ffc70e47","responseTime":36,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMX0.bsHMKoVioHziJ0AhOFZxpLPF42Cz9llt22ZuTEV_K50","level":"info","message":"auth send jwt","requestID":"9e11cc0b9c8b2336223acaabe8c02ae3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9e11cc0b9c8b2336223acaabe8c02ae3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"9e11cc0b9c8b2336223acaabe8c02ae3"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:11Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.058328,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"9e11cc0b9c8b2336223acaabe8c02ae3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615911,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMX0.bsHMKoVioHziJ0AhOFZxpLPF42Cz9llt22ZuTEV_K50"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9e11cc0b9c8b2336223acaabe8c02ae3","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc42c4ed8-ef5f-4269-a842-62bbded0a990","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc42c4ed8-ef5f-4269-a842-62bbded0a990","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:10.536935552Z"}]},"request_id":"a71016d7-df07-412a-9275-78e91b29fa18","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615911.0812607} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9e11cc0b9c8b2336223acaabe8c02ae3","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1cf5a64f-7674-49bf-a211-54476443bfd8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615911.0895505} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"9e11cc0b9c8b2336223acaabe8c02ae3","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc42c4ed8-ef5f-4269-a842-62bbded0a990","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc42c4ed8-ef5f-4269-a842-62bbded0a990","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:10.536935552Z"}]},"request_id":"75d69fc8-2b07-4239-ad36-e377283cde57","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615911.102703} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9e11cc0b9c8b2336223acaabe8c02ae3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"9e11cc0b9c8b2336223acaabe8c02ae3"} gateway-1 | {"time_local":"02/Aug/2024:16:25:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c42c4ed8-ef5f-4269-a842-62bbded0a990 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.049","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"9e11cc0b9c8b2336223acaabe8c02ae3"} device-1 | {"level":"info","message":"PATCH /devices/c42c4ed8-ef5f-4269-a842-62bbded0a990 200 42ms","method":"PATCH","requestID":"9e11cc0b9c8b2336223acaabe8c02ae3","responseTime":42,"status":200,"url":"/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMX0.bsHMKoVioHziJ0AhOFZxpLPF42Cz9llt22ZuTEV_K50","level":"info","message":"auth send jwt","requestID":"6c76dbac67bf26d5cc7c226176876a3c"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6c76dbac67bf26d5cc7c226176876a3c","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6c76dbac67bf26d5cc7c226176876a3c"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:11Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.181604,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"6c76dbac67bf26d5cc7c226176876a3c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615911,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMX0.bsHMKoVioHziJ0AhOFZxpLPF42Cz9llt22ZuTEV_K50"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6c76dbac67bf26d5cc7c226176876a3c","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6c76dbac67bf26d5cc7c226176876a3c"} gateway-1 | {"time_local":"02/Aug/2024:16:25:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c42c4ed8-ef5f-4269-a842-62bbded0a990/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"6c76dbac67bf26d5cc7c226176876a3c"} device-1 | {"level":"info","message":"POST /devices/c42c4ed8-ef5f-4269-a842-62bbded0a990/websocket 200 23ms","method":"POST","requestID":"6c76dbac67bf26d5cc7c226176876a3c","responseTime":23,"status":200,"url":"/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"454ec2c7f08c93b46e3a3b31e8009e34","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":"454ec2c7f08c93b46e3a3b31e8009e34","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/82ed0972-ade9-4c39-a4d4-797afee3e729/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":"454ec2c7f08c93b46e3a3b31e8009e34"} device-1 | {"level":"info","message":"OPTIONS /devices/82ed0972-ade9-4c39-a4d4-797afee3e729/websocket 200 1ms","method":"OPTIONS","requestID":"454ec2c7f08c93b46e3a3b31e8009e34","responseTime":1,"status":200,"url":"/devices/82ed0972-ade9-4c39-a4d4-797afee3e729/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMn0.9GpCCVW4SEpuia5Kuncg3f1u8cW4-I7Mbhz1U_YTWTY","level":"info","message":"auth send jwt","requestID":"6e4d9f3359a59d2fb672e51d8079d581"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6e4d9f3359a59d2fb672e51d8079d581","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6e4d9f3359a59d2fb672e51d8079d581"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.146443,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"6e4d9f3359a59d2fb672e51d8079d581","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615912,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMn0.9GpCCVW4SEpuia5Kuncg3f1u8cW4-I7Mbhz1U_YTWTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6e4d9f3359a59d2fb672e51d8079d581","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6e4d9f3359a59d2fb672e51d8079d581"} gateway-1 | {"time_local":"02/Aug/2024:16:25:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/82ed0972-ade9-4c39-a4d4-797afee3e729/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":"6e4d9f3359a59d2fb672e51d8079d581"} device-1 | {"level":"info","message":"POST /devices/82ed0972-ade9-4c39-a4d4-797afee3e729/websocket 200 24ms","method":"POST","requestID":"6e4d9f3359a59d2fb672e51d8079d581","responseTime":24,"status":200,"url":"/devices/82ed0972-ade9-4c39-a4d4-797afee3e729/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1c8bb87dbd2973b59e81533d5afa2cf0","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":"1c8bb87dbd2973b59e81533d5afa2cf0","responseTime":3,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/82ed0972-ade9-4c39-a4d4-797afee3e729? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"1c8bb87dbd2973b59e81533d5afa2cf0"} device-1 | {"level":"info","message":"OPTIONS /devices/82ed0972-ade9-4c39-a4d4-797afee3e729? 200 2ms","method":"OPTIONS","requestID":"1c8bb87dbd2973b59e81533d5afa2cf0","responseTime":2,"status":200,"url":"/devices/82ed0972-ade9-4c39-a4d4-797afee3e729?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMn0.9GpCCVW4SEpuia5Kuncg3f1u8cW4-I7Mbhz1U_YTWTY","level":"info","message":"auth send jwt","requestID":"8f89486b20c3680f37f885e1cb6122a6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8f89486b20c3680f37f885e1cb6122a6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"8f89486b20c3680f37f885e1cb6122a6"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.133823,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"8f89486b20c3680f37f885e1cb6122a6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615912,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMn0.9GpCCVW4SEpuia5Kuncg3f1u8cW4-I7Mbhz1U_YTWTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8f89486b20c3680f37f885e1cb6122a6","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82ed0972-ade9-4c39-a4d4-797afee3e729","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82ed0972-ade9-4c39-a4d4-797afee3e729","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:10.496187106Z"}]},"request_id":"e68cef12-f83d-46a3-961d-03b84ce8b95c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615912.6281524} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8f89486b20c3680f37f885e1cb6122a6","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ca39f05c-6ab3-4cb4-a1d1-4288fe1a7801","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615912.6362162} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"8f89486b20c3680f37f885e1cb6122a6","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82ed0972-ade9-4c39-a4d4-797afee3e729","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82ed0972-ade9-4c39-a4d4-797afee3e729","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:10.496187106Z"}]},"request_id":"f35953c0-37ce-49d3-b484-85209d825c01","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615912.6502268} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8f89486b20c3680f37f885e1cb6122a6","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"8f89486b20c3680f37f885e1cb6122a6"} device-1 | {"level":"info","message":"PATCH /devices/82ed0972-ade9-4c39-a4d4-797afee3e729? 200 40ms","method":"PATCH","requestID":"8f89486b20c3680f37f885e1cb6122a6","responseTime":40,"status":200,"url":"/devices/82ed0972-ade9-4c39-a4d4-797afee3e729?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/82ed0972-ade9-4c39-a4d4-797afee3e729? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.047","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":"8f89486b20c3680f37f885e1cb6122a6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMn0.9GpCCVW4SEpuia5Kuncg3f1u8cW4-I7Mbhz1U_YTWTY","level":"info","message":"auth send jwt","requestID":"d11a2982b77b6f7761386f6baba49b0f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d11a2982b77b6f7761386f6baba49b0f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d11a2982b77b6f7761386f6baba49b0f"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.895398,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d11a2982b77b6f7761386f6baba49b0f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615912,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMn0.9GpCCVW4SEpuia5Kuncg3f1u8cW4-I7Mbhz1U_YTWTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d11a2982b77b6f7761386f6baba49b0f","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82ed0972-ade9-4c39-a4d4-797afee3e729","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82ed0972-ade9-4c39-a4d4-797afee3e729","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:10.496187106Z"}]},"request_id":"221dd5a1-72b9-4c58-8874-07ea0b09f2da","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615912.6803124} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d11a2982b77b6f7761386f6baba49b0f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d11a2982b77b6f7761386f6baba49b0f"} gateway-1 | {"time_local":"02/Aug/2024:16:25:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/82ed0972-ade9-4c39-a4d4-797afee3e729? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.029","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d11a2982b77b6f7761386f6baba49b0f"} device-1 | {"level":"info","message":"GET /devices/82ed0972-ade9-4c39-a4d4-797afee3e729? 200 23ms","method":"GET","requestID":"d11a2982b77b6f7761386f6baba49b0f","responseTime":23,"status":200,"url":"/devices/82ed0972-ade9-4c39-a4d4-797afee3e729?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMn0.9GpCCVW4SEpuia5Kuncg3f1u8cW4-I7Mbhz1U_YTWTY","level":"info","message":"auth send jwt","requestID":"41ddce8b57b749ab845126a0750fba29"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"41ddce8b57b749ab845126a0750fba29","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"41ddce8b57b749ab845126a0750fba29"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.874739,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"41ddce8b57b749ab845126a0750fba29","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615912,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMn0.9GpCCVW4SEpuia5Kuncg3f1u8cW4-I7Mbhz1U_YTWTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"41ddce8b57b749ab845126a0750fba29","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc42c4ed8-ef5f-4269-a842-62bbded0a990","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc42c4ed8-ef5f-4269-a842-62bbded0a990","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:10.536935552Z"}]},"request_id":"bb4d3184-afbb-411d-a899-6203288f5b5a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615912.707681} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"41ddce8b57b749ab845126a0750fba29","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"41ddce8b57b749ab845126a0750fba29"} gateway-1 | {"time_local":"02/Aug/2024:16:25:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c42c4ed8-ef5f-4269-a842-62bbded0a990? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"41ddce8b57b749ab845126a0750fba29"} device-1 | {"level":"info","message":"GET /devices/c42c4ed8-ef5f-4269-a842-62bbded0a990? 200 15ms","method":"GET","requestID":"41ddce8b57b749ab845126a0750fba29","responseTime":15,"status":200,"url":"/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMn0.9GpCCVW4SEpuia5Kuncg3f1u8cW4-I7Mbhz1U_YTWTY","level":"info","message":"auth send jwt","requestID":"927916185dbfa92076446113429c0a86"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"927916185dbfa92076446113429c0a86","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"927916185dbfa92076446113429c0a86"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.208734,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"927916185dbfa92076446113429c0a86","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615912,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMn0.9GpCCVW4SEpuia5Kuncg3f1u8cW4-I7Mbhz1U_YTWTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"927916185dbfa92076446113429c0a86","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4"},"level":"info","message":"Attempting to run experiment","requestID":"927916185dbfa92076446113429c0a86"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4"},"level":"info","message":"Attempting to book experiment","requestID":"927916185dbfa92076446113429c0a86"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4"},"level":"info","message":"Successfully booked experiment","requestID":"927916185dbfa92076446113429c0a86"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cb27bb10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cb280930-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.686815,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51328","level":"info","msg":"Received request.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cb27bb10-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615912,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMn0.9GpCCVW4SEpuia5Kuncg3f1u8cW4-I7Mbhz1U_YTWTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cb27bb10-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51328","level":"info","msg":"Sent response.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.646159,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cb280930-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615912,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMn0.9GpCCVW4SEpuia5Kuncg3f1u8cW4-I7Mbhz1U_YTWTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cb280930-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82ed0972-ade9-4c39-a4d4-797afee3e729","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82ed0972-ade9-4c39-a4d4-797afee3e729","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:10.496187106Z"}]},"request_id":"b765ca8c-339c-4425-9d0c-6138d3272162","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615912.7794108} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cb27bb10-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc42c4ed8-ef5f-4269-a842-62bbded0a990","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc42c4ed8-ef5f-4269-a842-62bbded0a990","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:10.536935552Z"}]},"request_id":"c1dc5a52-52cd-450e-8fde-dec8fd159539","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615912.7803483} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"cb280930-50eb-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cb27bb10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/82ed0972-ade9-4c39-a4d4-797afee3e729? 200 16ms","method":"GET","requestID":"cb27bb10-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/82ed0972-ade9-4c39-a4d4-797afee3e729?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cb280930-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/c42c4ed8-ef5f-4269-a842-62bbded0a990? 200 14ms","method":"GET","requestID":"cb280930-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4"},"level":"info","message":"Setting up experiment","requestID":"927916185dbfa92076446113429c0a86"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"927916185dbfa92076446113429c0a86"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4"},"level":"info","message":"Successfully locked booking for experiment","requestID":"927916185dbfa92076446113429c0a86"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"927916185dbfa92076446113429c0a86"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"927916185dbfa92076446113429c0a86"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4"},"level":"info","message":"Attempting to update booking for experiment","requestID":"927916185dbfa92076446113429c0a86"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4"},"level":"info","message":"Successfully updated booking for experiment","requestID":"927916185dbfa92076446113429c0a86"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4"},"level":"info","message":"Successfully set up experiment","requestID":"927916185dbfa92076446113429c0a86"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cb30e2d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cb3130f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cb317f10-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4"},"level":"info","message":"Successfully running experiment","requestID":"927916185dbfa92076446113429c0a86"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.781673,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51328","level":"info","msg":"Received request.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cb30e2d0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615912,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMn0.9GpCCVW4SEpuia5Kuncg3f1u8cW4-I7Mbhz1U_YTWTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"cb30e2d0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51328","level":"info","msg":"Sent response.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.9974,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51334","level":"info","msg":"Received request.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cb3130f0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615912,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMn0.9GpCCVW4SEpuia5Kuncg3f1u8cW4-I7Mbhz1U_YTWTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"cb3130f0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51334","level":"info","msg":"Sent response.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.908131,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82ed0972-ade9-4c39-a4d4-797afee3e729","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"06d30314-67bb-4581-84ff-06f70a0411b8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615912.8408422} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cb317f10-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729","object_type":"device","rebac_allow":false,"scope_allow":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":"cb317f10-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82ed0972-ade9-4c39-a4d4-797afee3e729","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82ed0972-ade9-4c39-a4d4-797afee3e729","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:10.496187106Z"}]},"request_id":"be8fbf54-8684-471b-aa89-a601e835e71c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615912.8427498} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"cb30e2d0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc42c4ed8-ef5f-4269-a842-62bbded0a990","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc42c4ed8-ef5f-4269-a842-62bbded0a990","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:10.536935552Z"}]},"request_id":"1bda386e-2f93-4cf0-bd2f-af48c078b167","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615912.8476653} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cb3130f0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cb317f10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/82ed0972-ade9-4c39-a4d4-797afee3e729/signaling 200 21ms","method":"POST","requestID":"cb317f10-50eb-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/devices/82ed0972-ade9-4c39-a4d4-797afee3e729/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cb30e2d0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"5d27312b-b8c7-4b6d-b3ed-c7d61c2bbb20","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615912.857485} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"582d44c4-1b42-4e12-bdf0-3178f9cef30b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615912.8578289} device-1 | {"level":"info","message":"GET /devices/82ed0972-ade9-4c39-a4d4-797afee3e729? 200 29ms","method":"GET","requestID":"cb30e2d0-50eb-11ef-8434-2f6d198c7397","responseTime":29,"status":200,"url":"/devices/82ed0972-ade9-4c39-a4d4-797afee3e729?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cb3130f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/c42c4ed8-ef5f-4269-a842-62bbded0a990? 200 28ms","method":"GET","requestID":"cb3130f0-50eb-11ef-8434-2f6d198c7397","responseTime":28,"status":200,"url":"/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"927916185dbfa92076446113429c0a86","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cb359dc0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cb35ebe0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51328","level":"info","msg":"Received request.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc42c4ed8-ef5f-4269-a842-62bbded0a990","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"191c9fdf-9524-4738-a0c3-e7767ddfb9dd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615912.8652496} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.943095,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cb359dc0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990","object_type":"device","rebac_allow":false,"scope_allow":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":"cb359dc0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82ed0972-ade9-4c39-a4d4-797afee3e729","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a09d2861-05ab-4e70-a1ab-3452adf8ad06","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615912.8667355} authorization-1 | {"client_addr":"127.0.0.1:51328","level":"info","msg":"Sent response.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.651945,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cb35ebe0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729","object_type":"device","rebac_allow":false,"scope_allow":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":"cb35ebe0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"927916185dbfa92076446113429c0a86"} gateway-1 | {"time_local":"02/Aug/2024:16:25:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"782","request_time":"0.155","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"927916185dbfa92076446113429c0a86"} experiment-1 | {"level":"info","message":"POST /experiments? 201 149ms","method":"POST","requestID":"927916185dbfa92076446113429c0a86","responseTime":149,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cb359dc0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c42c4ed8-ef5f-4269-a842-62bbded0a990/signaling 200 12ms","method":"POST","requestID":"cb359dc0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cb35ebe0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/82ed0972-ade9-4c39-a4d4-797afee3e729/signaling 200 11ms","method":"POST","requestID":"cb35ebe0-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/82ed0972-ade9-4c39-a4d4-797afee3e729/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMn0.9GpCCVW4SEpuia5Kuncg3f1u8cW4-I7Mbhz1U_YTWTY","level":"info","message":"auth send jwt","requestID":"cb2ff7a6843742c5f817bfaeb76faa6b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cb2ff7a6843742c5f817bfaeb76faa6b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cb2ff7a6843742c5f817bfaeb76faa6b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cb3835d0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.1077,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cb2ff7a6843742c5f817bfaeb76faa6b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615912,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMn0.9GpCCVW4SEpuia5Kuncg3f1u8cW4-I7Mbhz1U_YTWTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cb2ff7a6843742c5f817bfaeb76faa6b","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51328","level":"info","msg":"Received request.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc42c4ed8-ef5f-4269-a842-62bbded0a990","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6611740e-9e65-47ab-b5e3-ea60bbef0a14","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615912.8819199} authorization-1 | {"client_addr":"127.0.0.1:51328","level":"info","msg":"Sent response.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.557469,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cb3835d0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990","object_type":"device","rebac_allow":false,"scope_allow":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":"cb3835d0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82ed0972-ade9-4c39-a4d4-797afee3e729","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82ed0972-ade9-4c39-a4d4-797afee3e729","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:10.496187106Z"}]},"request_id":"9c2547a2-595e-42c1-bd8f-6eb78a78b5be","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615912.8858104} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cb2ff7a6843742c5f817bfaeb76faa6b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cb3835d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c42c4ed8-ef5f-4269-a842-62bbded0a990/signaling 200 10ms","method":"POST","requestID":"cb3835d0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"927916185dbfa92076446113429c0a86"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cb3a31a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cb3a58b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cb2ff7a6843742c5f817bfaeb76faa6b"} gateway-1 | {"time_local":"02/Aug/2024:16:25:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/82ed0972-ade9-4c39-a4d4-797afee3e729? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cb2ff7a6843742c5f817bfaeb76faa6b"} device-1 | {"level":"info","message":"GET /devices/82ed0972-ade9-4c39-a4d4-797afee3e729? 200 20ms","method":"GET","requestID":"cb2ff7a6843742c5f817bfaeb76faa6b","responseTime":20,"status":200,"url":"/devices/82ed0972-ade9-4c39-a4d4-797afee3e729?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51328","level":"info","msg":"Received request.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.866474,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cb3a31a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615912,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMn0.9GpCCVW4SEpuia5Kuncg3f1u8cW4-I7Mbhz1U_YTWTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cb3a31a0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51328","level":"info","msg":"Sent response.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.832846,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cb3a58b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615912,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMn0.9GpCCVW4SEpuia5Kuncg3f1u8cW4-I7Mbhz1U_YTWTY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cb3a58b0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMn0.9GpCCVW4SEpuia5Kuncg3f1u8cW4-I7Mbhz1U_YTWTY","level":"info","message":"auth send jwt","requestID":"7e4a73004dde5d0dd8b0aae79958bab1"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7e4a73004dde5d0dd8b0aae79958bab1","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7e4a73004dde5d0dd8b0aae79958bab1"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82ed0972-ade9-4c39-a4d4-797afee3e729","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82ed0972-ade9-4c39-a4d4-797afee3e729","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:10.496187106Z"}]},"request_id":"d98cbd64-9c92-47ac-a034-7be691153c39","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615912.8998091} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cb3a31a0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc42c4ed8-ef5f-4269-a842-62bbded0a990","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc42c4ed8-ef5f-4269-a842-62bbded0a990","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:10.536935552Z"}]},"request_id":"bf769733-0b41-44de-8745-65154b9aea47","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615912.9009643} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cb3a58b0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.747343,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"7e4a73004dde5d0dd8b0aae79958bab1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615912,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMn0.9GpCCVW4SEpuia5Kuncg3f1u8cW4-I7Mbhz1U_YTWTY"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cb3a31a0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7e4a73004dde5d0dd8b0aae79958bab1","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/82ed0972-ade9-4c39-a4d4-797afee3e729? 200 15ms","method":"GET","requestID":"cb3a31a0-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/82ed0972-ade9-4c39-a4d4-797afee3e729?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cb3a58b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/c42c4ed8-ef5f-4269-a842-62bbded0a990? 200 15ms","method":"GET","requestID":"cb3a58b0-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4"},"level":"info","message":"Building connection plan","requestID":"927916185dbfa92076446113429c0a86"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"7d321670-2d25-44b7-b45a-8d6819b37e7a"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"bb1f1e0c-7f7e-49f1-a842-f74e6d5883e7"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"d10789ba-caf9-4c43-aa16-389e11241224"}]},"level":"info","message":"Built pairwise service configurations","requestID":"927916185dbfa92076446113429c0a86"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"927916185dbfa92076446113429c0a86"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"cb3d17d0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc42c4ed8-ef5f-4269-a842-62bbded0a990","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc42c4ed8-ef5f-4269-a842-62bbded0a990","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:10.536935552Z"}]},"request_id":"3234ff90-8375-4ff7-bb98-c0c0dbcf9384","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615912.9103134} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7e4a73004dde5d0dd8b0aae79958bab1","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.797903,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:12Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7e4a73004dde5d0dd8b0aae79958bab1"} gateway-1 | {"time_local":"02/Aug/2024:16:25:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c42c4ed8-ef5f-4269-a842-62bbded0a990? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7e4a73004dde5d0dd8b0aae79958bab1"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cb3d17d0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615912,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxMn0.9GpCCVW4SEpuia5Kuncg3f1u8cW4-I7Mbhz1U_YTWTY"} device-1 | {"level":"info","message":"GET /devices/c42c4ed8-ef5f-4269-a842-62bbded0a990? 200 14ms","method":"GET","requestID":"7e4a73004dde5d0dd8b0aae79958bab1","responseTime":14,"status":200,"url":"/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990?"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cb3d17d0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"b6f735f9-bfb6-4c4a-b1b7-75a1ec99ab27","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615912.9214177} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4684b04d-88e0-4f13-a801-124c0c6a275d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615912.9217188} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"cb3d17d0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"cb3d17d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"cb3d17d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/c04e220e-c388-4918-ae1e-e3d9e4111076'","requestID":"cb3d17d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/c04e220e-c388-4918-ae1e-e3d9e4111076'","requestID":"cb3d17d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"cb3d17d0-50eb-11ef-8434-2f6d198c7397"} 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":"cb3d17d0-50eb-11ef-8434-2f6d198c7397","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":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"cb3d17d0-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"927916185dbfa92076446113429c0a86"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cb452e20-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82ed0972-ade9-4c39-a4d4-797afee3e729","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6f15fa1c-7325-490c-b687-895d1016e664","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615912.9662051} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.312623,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cb452e20-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729","object_type":"device","rebac_allow":false,"scope_allow":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":"cb452e20-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"82ed0972-ade9-4c39-a4d4-797afee3e729","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"82ed0972-ade9-4c39-a4d4-797afee3e729","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cb452e20-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/82ed0972-ade9-4c39-a4d4-797afee3e729/signaling 200 10ms","method":"POST","requestID":"cb452e20-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/82ed0972-ade9-4c39-a4d4-797afee3e729/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cb4702e0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc42c4ed8-ef5f-4269-a842-62bbded0a990","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"19fa9ad1-d8c8-4ee0-8ae0-e8d1053d3a01","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615912.9787962} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.08194,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cb4702e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990","object_type":"device","rebac_allow":false,"scope_allow":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":"cb4702e0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cb4702e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c42c4ed8-ef5f-4269-a842-62bbded0a990/signaling 200 9ms","method":"POST","requestID":"cb4702e0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990/signaling"} device-1 | {"device":"c42c4ed8-ef5f-4269-a842-62bbded0a990","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"c04e220e-c388-4918-ae1e-e3d9e4111076","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 3511538449066575737 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=msid-semantic: WMS\r\nm=application 9 DTLS/SCTP 5000\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:ejtt\r\na=ice-pwd:Dy8CBRjWYLJCMCkEbW7Gl1Mj\r\na=ice-options:trickle\r\na=fingerprint:sha-256 8B:BD:29:13:C3:B0:1F:D8:21:E4:87:E6:E8:7C:39:1E:6B:8E:5C:F6:30:B4:96:C4:85:76:27:51:6C:70:F3:0D\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"82ed0972-ade9-4c39-a4d4-797afee3e729","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3062416772 1 udp 2113937151 512c2355-8bd5-498a-880b-ea59f3df8cc7.local 32815 typ host generation 0 ufrag ejtt network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"82ed0972-ade9-4c39-a4d4-797afee3e729","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"82ed0972-ade9-4c39-a4d4-797afee3e729","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:3011562204 1 udp 1677729535 141.24.211.56 32815 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag ejtt network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"82ed0972-ade9-4c39-a4d4-797afee3e729","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"82ed0972-ade9-4c39-a4d4-797afee3e729","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c04e220e-c388-4918-ae1e-e3d9e4111076' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c04e220e-c388-4918-ae1e-e3d9e4111076","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729'"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"785d647cf28426175b57b5a01e809c3b","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":"785d647cf28426175b57b5a01e809c3b","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/c04e220e-c388-4918-ae1e-e3d9e4111076"}}},"level":"info","message":"received a callback","requestID":"785d647cf28426175b57b5a01e809c3b"} device-1 | {"device":"c42c4ed8-ef5f-4269-a842-62bbded0a990","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c42c4ed8-ef5f-4269-a842-62bbded0a990","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c42c4ed8-ef5f-4269-a842-62bbded0a990","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"785d647cf28426175b57b5a01e809c3b","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25: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.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"785d647cf28426175b57b5a01e809c3b"} device-1 | {"data":{"peerconnection":"c04e220e-c388-4918-ae1e-e3d9e4111076","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"c42c4ed8-ef5f-4269-a842-62bbded0a990","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"82ed0972-ade9-4c39-a4d4-797afee3e729","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"c42c4ed8-ef5f-4269-a842-62bbded0a990","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"c04e220e-c388-4918-ae1e-e3d9e4111076","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"82ed0972-ade9-4c39-a4d4-797afee3e729","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c04e220e-c388-4918-ae1e-e3d9e4111076' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c04e220e-c388-4918-ae1e-e3d9e4111076","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"052dcf9b6534852fb2f732abc0727889","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":"052dcf9b6534852fb2f732abc0727889","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/c04e220e-c388-4918-ae1e-e3d9e4111076"}}},"level":"info","message":"received a callback","requestID":"052dcf9b6534852fb2f732abc0727889"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"cc8639a0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:15Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc04e220e-c388-4918-ae1e-e3d9e4111076","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d0e6fd61-bff7-47ec-988f-0333605ade67","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615915.0721211} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.822443,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c04e220e-c388-4918-ae1e-e3d9e4111076","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cc8639a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/c04e220e-c388-4918-ae1e-e3d9e4111076","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":"cc8639a0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"cc8639a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/c04e220e-c388-4918-ae1e-e3d9e4111076 200 11ms","method":"GET","requestID":"cc8639a0-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/peerconnections/c04e220e-c388-4918-ae1e-e3d9e4111076"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 42ms","method":"POST","requestID":"052dcf9b6534852fb2f732abc0727889","responseTime":42,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:15 +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.047","http_referrer":"","http_user_agent":"node-fetch","requestID":"052dcf9b6534852fb2f732abc0727889"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cc8b69c0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:15Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82ed0972-ade9-4c39-a4d4-797afee3e729","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0418eb85-8964-4cce-8de9-258328b34a5a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615915.1063027} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.481139,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cc8b69c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729","object_type":"device","rebac_allow":false,"scope_allow":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":"cc8b69c0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cc8b69c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/82ed0972-ade9-4c39-a4d4-797afee3e729/signaling 200 11ms","method":"POST","requestID":"cc8b69c0-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/82ed0972-ade9-4c39-a4d4-797afee3e729/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cc8d6590-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:15Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc42c4ed8-ef5f-4269-a842-62bbded0a990","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa5a9528-74d8-496b-aaab-c5b7b627fa17","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615915.1188831} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.87603,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cc8d6590-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990","object_type":"device","rebac_allow":false,"scope_allow":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":"cc8d6590-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cc8d6590-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c42c4ed8-ef5f-4269-a842-62bbded0a990/signaling 200 12ms","method":"POST","requestID":"cc8d6590-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxNX0.SQDQaoArL0OR9lC3ZJp-lTml92jrfCY6A1pszLRXEVw","level":"info","message":"auth send jwt","requestID":"c3b13d0c93fb0a685f6ef175ab2d605f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c3b13d0c93fb0a685f6ef175ab2d605f","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4","requestID":"c3b13d0c93fb0a685f6ef175ab2d605f"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.40088,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c3b13d0c93fb0a685f6ef175ab2d605f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615915,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxNX0.SQDQaoArL0OR9lC3ZJp-lTml92jrfCY6A1pszLRXEVw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c3b13d0c93fb0a685f6ef175ab2d605f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4","requestID":"c3b13d0c93fb0a685f6ef175ab2d605f"} gateway-1 | {"time_local":"02/Aug/2024:16:25:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4 HTTP/1.1","status": "200","body_bytes_sent":"855","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c3b13d0c93fb0a685f6ef175ab2d605f"} experiment-1 | {"level":"info","message":"GET /experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4 200 17ms","method":"GET","requestID":"c3b13d0c93fb0a685f6ef175ab2d605f","responseTime":17,"status":200,"url":"/experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxNX0.SQDQaoArL0OR9lC3ZJp-lTml92jrfCY6A1pszLRXEVw","level":"info","message":"auth send jwt","requestID":"46d91021cd0e32fb6f3be5a2e7308bb7"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"46d91021cd0e32fb6f3be5a2e7308bb7","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4","requestID":"46d91021cd0e32fb6f3be5a2e7308bb7"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.17484,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:15Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"46d91021cd0e32fb6f3be5a2e7308bb7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615915,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxNX0.SQDQaoArL0OR9lC3ZJp-lTml92jrfCY6A1pszLRXEVw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"46d91021cd0e32fb6f3be5a2e7308bb7","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4"},"level":"info","message":"Attempting to finish experiment","requestID":"46d91021cd0e32fb6f3be5a2e7308bb7"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"ccb5fc30-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.763855,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:15Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c04e220e-c388-4918-ae1e-e3d9e4111076","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ccb5fc30-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/c04e220e-c388-4918-ae1e-e3d9e4111076","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615915,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxNX0.SQDQaoArL0OR9lC3ZJp-lTml92jrfCY6A1pszLRXEVw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ccb5fc30-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/c04e220e-c388-4918-ae1e-e3d9e4111076","device":"82ed0972-ade9-4c39-a4d4-797afee3e729","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"c42c4ed8-ef5f-4269-a842-62bbded0a990","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c42c4ed8-ef5f-4269-a842-62bbded0a990","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c42c4ed8-ef5f-4269-a842-62bbded0a990","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c04e220e-c388-4918-ae1e-e3d9e4111076' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/c04e220e-c388-4918-ae1e-e3d9e4111076' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c04e220e-c388-4918-ae1e-e3d9e4111076","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc04e220e-c388-4918-ae1e-e3d9e4111076': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc04e220e-c388-4918-ae1e-e3d9e4111076","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"b151c425-1d99-4d3a-b010-a7a3f20f5c82","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615915.4051461} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"06393b9a-559b-4cac-ab08-3a9204eb130a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615915.4054294} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e2363e639b682ec7444ad4154c017a31","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":"e2363e639b682ec7444ad4154c017a31","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"ccb5fc30-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c04e220e-c388-4918-ae1e-e3d9e4111076"}}},"level":"info","message":"received a callback","requestID":"e2363e639b682ec7444ad4154c017a31"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1674df25caada6b9404af1b87551313b","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":"1674df25caada6b9404af1b87551313b","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c04e220e-c388-4918-ae1e-e3d9e4111076"}}},"level":"info","message":"received a callback","requestID":"1674df25caada6b9404af1b87551313b"} device-1 | {"data":{"peerconnection":"c04e220e-c388-4918-ae1e-e3d9e4111076","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"ccb5fc30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/c04e220e-c388-4918-ae1e-e3d9e4111076 204 50ms","method":"DELETE","requestID":"ccb5fc30-50eb-11ef-8434-2f6d198c7397","responseTime":50,"status":204,"url":"/peerconnections/c04e220e-c388-4918-ae1e-e3d9e4111076"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4"},"level":"info","message":"Successfully finished experiment","requestID":"46d91021cd0e32fb6f3be5a2e7308bb7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ccc03560-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:15Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82ed0972-ade9-4c39-a4d4-797afee3e729","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8c8c5dd3-9063-4d9e-bef4-2d1208a4c657","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615915.4512477} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.30453,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ccc03560-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/82ed0972-ade9-4c39-a4d4-797afee3e729","object_type":"device","rebac_allow":false,"scope_allow":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":"ccc03560-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ccc03560-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/82ed0972-ade9-4c39-a4d4-797afee3e729/signaling 200 10ms","method":"POST","requestID":"ccc03560-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/82ed0972-ade9-4c39-a4d4-797afee3e729/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ccc20a20-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"548a27e6-e6a1-43d3-a573-f972d3c83c41","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615915.458477} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"678a3500-9f0c-44e8-bb21-9d340e1d6fb0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615915.4586403} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"46d91021cd0e32fb6f3be5a2e7308bb7","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:15Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc42c4ed8-ef5f-4269-a842-62bbded0a990","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a0052bd5-0120-4c93-b425-9a15fc3cd107","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615915.4633198} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.452641,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ccc20a20-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990","object_type":"device","rebac_allow":false,"scope_allow":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":"ccc20a20-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ccc20a20-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c42c4ed8-ef5f-4269-a842-62bbded0a990/signaling 200 9ms","method":"POST","requestID":"ccc20a20-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/c42c4ed8-ef5f-4269-a842-62bbded0a990/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4","requestID":"46d91021cd0e32fb6f3be5a2e7308bb7"} gateway-1 | {"time_local":"02/Aug/2024:16:25:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.165","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"46d91021cd0e32fb6f3be5a2e7308bb7"} experiment-1 | {"level":"info","message":"DELETE /experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4 204 159ms","method":"DELETE","requestID":"46d91021cd0e32fb6f3be5a2e7308bb7","responseTime":159,"status":204,"url":"/experiments/0c3f48ad-8504-4f1a-9c3e-8a80c271d1b4"} gateway-1 | {"time_local":"02/Aug/2024:16:25:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2925","request_time":"4.385","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"85e9a323effbcb5a5c2aaebfc41aa63f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 115ms","method":"POST","requestID":"e2363e639b682ec7444ad4154c017a31","responseTime":115,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:15 +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":"e2363e639b682ec7444ad4154c017a31"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"1674df25caada6b9404af1b87551313b","responseTime":114,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:15 +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":"1674df25caada6b9404af1b87551313b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxNX0.SQDQaoArL0OR9lC3ZJp-lTml92jrfCY6A1pszLRXEVw","level":"info","message":"auth send jwt","requestID":"d615c9fd226374e9c4d60d1899631c51"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"d615c9fd226374e9c4d60d1899631c51","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d615c9fd226374e9c4d60d1899631c51"} gateway-1 | {"time_local":"02/Aug/2024:16:25:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2462","request_time":"2.959","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":"6ff013631d57573f00e740bae95d18af"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.895516,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d615c9fd226374e9c4d60d1899631c51","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615915,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxNX0.SQDQaoArL0OR9lC3ZJp-lTml92jrfCY6A1pszLRXEVw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d615c9fd226374e9c4d60d1899631c51","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/c42c4ed8-ef5f-4269-a842-62bbded0a990' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7842052b-d6b1-4db4-9b35-0b40fc78d853","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"90b18333-8d5c-4fc1-abc4-9e09b3e8dfcd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615915.5494797} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d615c9fd226374e9c4d60d1899631c51","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/82ed0972-ade9-4c39-a4d4-797afee3e729' 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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"859be828-28d4-404d-9f77-2d3b7ac99b10","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615915.5541048} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"d615c9fd226374e9c4d60d1899631c51","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7842052b-d6b1-4db4-9b35-0b40fc78d853","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"31bbaf72-20f6-40e1-9ecd-32c815b95532","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615915.5636532} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"52603ee6-af00-4908-b633-67e956e09505","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615915.5638454} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"d615c9fd226374e9c4d60d1899631c51","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7842052b-d6b1-4db4-9b35-0b40fc78d853","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7842052b-d6b1-4db4-9b35-0b40fc78d853","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:15.563626474Z"}]},"request_id":"80deb914-bb5f-46ec-bea3-4c173913a332","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615915.5688121} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d615c9fd226374e9c4d60d1899631c51","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d615c9fd226374e9c4d60d1899631c51"} gateway-1 | {"time_local":"02/Aug/2024:16:25:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d615c9fd226374e9c4d60d1899631c51"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"d615c9fd226374e9c4d60d1899631c51","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxNX0.SQDQaoArL0OR9lC3ZJp-lTml92jrfCY6A1pszLRXEVw","level":"info","message":"auth send jwt","requestID":"56c8e8b7d6440eb5bfd7fed6653fb799"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"56c8e8b7d6440eb5bfd7fed6653fb799","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"56c8e8b7d6440eb5bfd7fed6653fb799"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.669097,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"56c8e8b7d6440eb5bfd7fed6653fb799","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615915,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxNX0.SQDQaoArL0OR9lC3ZJp-lTml92jrfCY6A1pszLRXEVw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"56c8e8b7d6440eb5bfd7fed6653fb799","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fcf4e89-f714-4c3d-92d6-6a825ea19412","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"66aaf603-4a52-4b24-80a0-f717c3e122d4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615915.5993688} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"56c8e8b7d6440eb5bfd7fed6653fb799","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"53185dc5-8886-4edb-a7af-305f97a50f22","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615915.6041882} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"56c8e8b7d6440eb5bfd7fed6653fb799","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fcf4e89-f714-4c3d-92d6-6a825ea19412","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"15b26374-96f2-4056-bd2d-8b22a9fdf491","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615915.6155858} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"27f1babd-336b-4d03-bae2-82bf23819393","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615915.6157851} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"56c8e8b7d6440eb5bfd7fed6653fb799","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fcf4e89-f714-4c3d-92d6-6a825ea19412","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fcf4e89-f714-4c3d-92d6-6a825ea19412","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:15.615564074Z"}]},"request_id":"357f97cb-db45-427c-a4dd-6b735a2fbbe6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615915.6207433} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"56c8e8b7d6440eb5bfd7fed6653fb799","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"56c8e8b7d6440eb5bfd7fed6653fb799"} gateway-1 | {"time_local":"02/Aug/2024:16:25:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"56c8e8b7d6440eb5bfd7fed6653fb799"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"56c8e8b7d6440eb5bfd7fed6653fb799","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxNn0.s0K0ERQV-IyKSyw3NB874lyMZXkW1ArS3YSvIeFlkJc","level":"info","message":"auth send jwt","requestID":"31ab74003b0a199ea25eca7a19e7a399"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"31ab74003b0a199ea25eca7a19e7a399","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"31ab74003b0a199ea25eca7a19e7a399"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.13325,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:16Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"31ab74003b0a199ea25eca7a19e7a399","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615916,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxNn0.s0K0ERQV-IyKSyw3NB874lyMZXkW1ArS3YSvIeFlkJc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"31ab74003b0a199ea25eca7a19e7a399","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7842052b-d6b1-4db4-9b35-0b40fc78d853","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7842052b-d6b1-4db4-9b35-0b40fc78d853","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:15.563626474Z"}]},"request_id":"8d63810e-ba67-4843-8443-df7eeecd3d68","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615916.1424263} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"31ab74003b0a199ea25eca7a19e7a399","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9ad891b5-fbbf-46e8-a8e1-8347b60f27a7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615916.1504633} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"31ab74003b0a199ea25eca7a19e7a399","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7842052b-d6b1-4db4-9b35-0b40fc78d853","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7842052b-d6b1-4db4-9b35-0b40fc78d853","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:15.563626474Z"}]},"request_id":"d4b54922-238c-497f-a417-542e8e840586","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615916.1643188} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"31ab74003b0a199ea25eca7a19e7a399","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"31ab74003b0a199ea25eca7a19e7a399"} gateway-1 | {"time_local":"02/Aug/2024:16:25:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7842052b-d6b1-4db4-9b35-0b40fc78d853 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.046","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"31ab74003b0a199ea25eca7a19e7a399"} device-1 | {"level":"info","message":"PATCH /devices/7842052b-d6b1-4db4-9b35-0b40fc78d853 200 40ms","method":"PATCH","requestID":"31ab74003b0a199ea25eca7a19e7a399","responseTime":40,"status":200,"url":"/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxNn0.s0K0ERQV-IyKSyw3NB874lyMZXkW1ArS3YSvIeFlkJc","level":"info","message":"auth send jwt","requestID":"54942b1faebb52f20f01d19d122a12b9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"54942b1faebb52f20f01d19d122a12b9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"54942b1faebb52f20f01d19d122a12b9"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.198215,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:16Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"54942b1faebb52f20f01d19d122a12b9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615916,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxNn0.s0K0ERQV-IyKSyw3NB874lyMZXkW1ArS3YSvIeFlkJc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"54942b1faebb52f20f01d19d122a12b9","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"54942b1faebb52f20f01d19d122a12b9"} gateway-1 | {"time_local":"02/Aug/2024:16:25:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7842052b-d6b1-4db4-9b35-0b40fc78d853/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"54942b1faebb52f20f01d19d122a12b9"} device-1 | {"level":"info","message":"POST /devices/7842052b-d6b1-4db4-9b35-0b40fc78d853/websocket 200 23ms","method":"POST","requestID":"54942b1faebb52f20f01d19d122a12b9","responseTime":23,"status":200,"url":"/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bf0fe34e7fa75b93d2b1f4792373229c","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":"bf0fe34e7fa75b93d2b1f4792373229c","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412/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":"bf0fe34e7fa75b93d2b1f4792373229c"} device-1 | {"level":"info","message":"OPTIONS /devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412/websocket 200 1ms","method":"OPTIONS","requestID":"bf0fe34e7fa75b93d2b1f4792373229c","responseTime":1,"status":200,"url":"/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxN30.FM7PDidWNFtbeYPf4iRiTd5XYv6IQTkvgrKG0UQEI2w","level":"info","message":"auth send jwt","requestID":"239c5a48fbaa472a48399c1f69683eb6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"239c5a48fbaa472a48399c1f69683eb6","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"239c5a48fbaa472a48399c1f69683eb6"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.165913,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"239c5a48fbaa472a48399c1f69683eb6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615917,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxN30.FM7PDidWNFtbeYPf4iRiTd5XYv6IQTkvgrKG0UQEI2w"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"239c5a48fbaa472a48399c1f69683eb6","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"239c5a48fbaa472a48399c1f69683eb6"} device-1 | {"level":"info","message":"POST /devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412/websocket 200 25ms","method":"POST","requestID":"239c5a48fbaa472a48399c1f69683eb6","responseTime":26,"status":200,"url":"/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:25:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412/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":"239c5a48fbaa472a48399c1f69683eb6"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bea8dab01b692da2ad4bd4370e036a7d","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":"bea8dab01b692da2ad4bd4370e036a7d","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"bea8dab01b692da2ad4bd4370e036a7d"} device-1 | {"level":"info","message":"OPTIONS /devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412? 200 1ms","method":"OPTIONS","requestID":"bea8dab01b692da2ad4bd4370e036a7d","responseTime":1,"status":200,"url":"/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxN30.FM7PDidWNFtbeYPf4iRiTd5XYv6IQTkvgrKG0UQEI2w","level":"info","message":"auth send jwt","requestID":"48769754de2cc387f152581c6fdcbb81"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"48769754de2cc387f152581c6fdcbb81","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"48769754de2cc387f152581c6fdcbb81"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.272799,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"48769754de2cc387f152581c6fdcbb81","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615917,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxN30.FM7PDidWNFtbeYPf4iRiTd5XYv6IQTkvgrKG0UQEI2w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"48769754de2cc387f152581c6fdcbb81","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fcf4e89-f714-4c3d-92d6-6a825ea19412","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fcf4e89-f714-4c3d-92d6-6a825ea19412","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:15.615564074Z"}]},"request_id":"90ae6228-0429-40c3-8d2a-18ba9f5aa02c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615917.743688} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"48769754de2cc387f152581c6fdcbb81","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"475b9c0e-a189-4c74-be31-2272229a60a3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615917.7527936} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"48769754de2cc387f152581c6fdcbb81","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fcf4e89-f714-4c3d-92d6-6a825ea19412","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fcf4e89-f714-4c3d-92d6-6a825ea19412","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:15.615564074Z"}]},"request_id":"f7a7a8ec-dbc1-4f98-942a-30ebc3fe78b3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615917.76539} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"48769754de2cc387f152581c6fdcbb81","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"48769754de2cc387f152581c6fdcbb81"} gateway-1 | {"time_local":"02/Aug/2024:16:25:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.047","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":"48769754de2cc387f152581c6fdcbb81"} device-1 | {"level":"info","message":"PATCH /devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412? 200 41ms","method":"PATCH","requestID":"48769754de2cc387f152581c6fdcbb81","responseTime":41,"status":200,"url":"/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxN30.FM7PDidWNFtbeYPf4iRiTd5XYv6IQTkvgrKG0UQEI2w","level":"info","message":"auth send jwt","requestID":"01b512f8e972ace598f78673f04f012a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"01b512f8e972ace598f78673f04f012a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"01b512f8e972ace598f78673f04f012a"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.284893,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"01b512f8e972ace598f78673f04f012a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615917,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxN30.FM7PDidWNFtbeYPf4iRiTd5XYv6IQTkvgrKG0UQEI2w"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"01b512f8e972ace598f78673f04f012a","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7842052b-d6b1-4db4-9b35-0b40fc78d853","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7842052b-d6b1-4db4-9b35-0b40fc78d853","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:15.563626474Z"}]},"request_id":"ec9f992a-1952-4183-86be-7159988cc355","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615917.7953777} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"01b512f8e972ace598f78673f04f012a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"01b512f8e972ace598f78673f04f012a"} gateway-1 | {"time_local":"02/Aug/2024:16:25:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7842052b-d6b1-4db4-9b35-0b40fc78d853? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"01b512f8e972ace598f78673f04f012a"} device-1 | {"level":"info","message":"GET /devices/7842052b-d6b1-4db4-9b35-0b40fc78d853? 200 20ms","method":"GET","requestID":"01b512f8e972ace598f78673f04f012a","responseTime":20,"status":200,"url":"/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxN30.FM7PDidWNFtbeYPf4iRiTd5XYv6IQTkvgrKG0UQEI2w","level":"info","message":"auth send jwt","requestID":"4ecd8c58ecea2ba5c8e8d8d7d723e0bd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4ecd8c58ecea2ba5c8e8d8d7d723e0bd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4ecd8c58ecea2ba5c8e8d8d7d723e0bd"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.165747,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"4ecd8c58ecea2ba5c8e8d8d7d723e0bd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615917,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxN30.FM7PDidWNFtbeYPf4iRiTd5XYv6IQTkvgrKG0UQEI2w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4ecd8c58ecea2ba5c8e8d8d7d723e0bd","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fcf4e89-f714-4c3d-92d6-6a825ea19412","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fcf4e89-f714-4c3d-92d6-6a825ea19412","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:15.615564074Z"}]},"request_id":"3773d53b-cfcc-4065-a0fd-ef36850af182","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615917.8211308} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4ecd8c58ecea2ba5c8e8d8d7d723e0bd","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4ecd8c58ecea2ba5c8e8d8d7d723e0bd"} gateway-1 | {"time_local":"02/Aug/2024:16:25:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4ecd8c58ecea2ba5c8e8d8d7d723e0bd"} device-1 | {"level":"info","message":"GET /devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412? 200 18ms","method":"GET","requestID":"4ecd8c58ecea2ba5c8e8d8d7d723e0bd","responseTime":18,"status":200,"url":"/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxN30.FM7PDidWNFtbeYPf4iRiTd5XYv6IQTkvgrKG0UQEI2w","level":"info","message":"auth send jwt","requestID":"f1799069593caec46110d168878954a3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f1799069593caec46110d168878954a3","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"f1799069593caec46110d168878954a3"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.083555,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f1799069593caec46110d168878954a3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615917,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxN30.FM7PDidWNFtbeYPf4iRiTd5XYv6IQTkvgrKG0UQEI2w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f1799069593caec46110d168878954a3","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bde46b22-488f-47c5-a997-4c69b8294182"},"level":"info","message":"Attempting to run experiment","requestID":"f1799069593caec46110d168878954a3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bde46b22-488f-47c5-a997-4c69b8294182"},"level":"info","message":"Attempting to book experiment","requestID":"f1799069593caec46110d168878954a3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bde46b22-488f-47c5-a997-4c69b8294182"},"level":"info","message":"Successfully booked experiment","requestID":"f1799069593caec46110d168878954a3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce32d830-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce334d60-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.654601,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ce32d830-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615917,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxN30.FM7PDidWNFtbeYPf4iRiTd5XYv6IQTkvgrKG0UQEI2w"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ce32d830-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39890","level":"info","msg":"Received request.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:17Z"} authorization-1 | {"client_addr":"127.0.0.1:39890","level":"info","msg":"Sent response.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.808675,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ce334d60-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615917,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxN30.FM7PDidWNFtbeYPf4iRiTd5XYv6IQTkvgrKG0UQEI2w"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"ce334d60-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7842052b-d6b1-4db4-9b35-0b40fc78d853","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7842052b-d6b1-4db4-9b35-0b40fc78d853","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:15.563626474Z"}]},"request_id":"76bcbec7-c2f6-4c01-ace2-f95edb9174da","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615917.8895638} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ce32d830-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fcf4e89-f714-4c3d-92d6-6a825ea19412","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fcf4e89-f714-4c3d-92d6-6a825ea19412","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:15.615564074Z"}]},"request_id":"3813d740-60a8-4aa0-9118-04c49be11a89","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615917.896695} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ce334d60-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce32d830-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/7842052b-d6b1-4db4-9b35-0b40fc78d853? 200 26ms","method":"GET","requestID":"ce32d830-50eb-11ef-8434-2f6d198c7397","responseTime":26,"status":200,"url":"/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce334d60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412? 200 25ms","method":"GET","requestID":"ce334d60-50eb-11ef-8434-2f6d198c7397","responseTime":25,"status":200,"url":"/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bde46b22-488f-47c5-a997-4c69b8294182"},"level":"info","message":"Setting up experiment","requestID":"f1799069593caec46110d168878954a3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bde46b22-488f-47c5-a997-4c69b8294182"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"f1799069593caec46110d168878954a3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bde46b22-488f-47c5-a997-4c69b8294182"},"level":"info","message":"Successfully locked booking for experiment","requestID":"f1799069593caec46110d168878954a3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bde46b22-488f-47c5-a997-4c69b8294182"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"f1799069593caec46110d168878954a3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bde46b22-488f-47c5-a997-4c69b8294182"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"f1799069593caec46110d168878954a3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bde46b22-488f-47c5-a997-4c69b8294182"},"level":"info","message":"Attempting to update booking for experiment","requestID":"f1799069593caec46110d168878954a3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bde46b22-488f-47c5-a997-4c69b8294182"},"level":"info","message":"Successfully updated booking for experiment","requestID":"f1799069593caec46110d168878954a3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bde46b22-488f-47c5-a997-4c69b8294182"},"level":"info","message":"Successfully set up experiment","requestID":"f1799069593caec46110d168878954a3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce4045b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce40bae0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:17Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce415720-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.80286,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:17Z"} authorization-1 | {"client_addr":"127.0.0.1:39890","level":"info","msg":"Received request.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:17Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bde46b22-488f-47c5-a997-4c69b8294182"},"level":"info","message":"Successfully running experiment","requestID":"f1799069593caec46110d168878954a3"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ce4045b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615917,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxN30.FM7PDidWNFtbeYPf4iRiTd5XYv6IQTkvgrKG0UQEI2w"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"ce4045b0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39890","level":"info","msg":"Sent response.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.104158,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ce40bae0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615917,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxN30.FM7PDidWNFtbeYPf4iRiTd5XYv6IQTkvgrKG0UQEI2w"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"ce40bae0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:17Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7842052b-d6b1-4db4-9b35-0b40fc78d853","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3106c073-0c65-4fc7-83ba-90943c0b5a15","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615917.9806104} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.479879,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ce415720-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853","object_type":"device","rebac_allow":false,"scope_allow":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":"ce415720-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7842052b-d6b1-4db4-9b35-0b40fc78d853","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7842052b-d6b1-4db4-9b35-0b40fc78d853","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:15.563626474Z"}]},"request_id":"b62b80b9-5258-404b-937a-701758ed4b9e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615917.984548} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fcf4e89-f714-4c3d-92d6-6a825ea19412","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fcf4e89-f714-4c3d-92d6-6a825ea19412","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:15.615564074Z"}]},"request_id":"e5d00cdf-83cb-4cf5-a600-f65d8a2fd608","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615917.9861782} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"ce4045b0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"ce40bae0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbde46b22-488f-47c5-a997-4c69b8294182#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbde46b22-488f-47c5-a997-4c69b8294182","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"3ae5df52-eb0c-4967-9f02-b178f1dea011","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615917.9985995} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0b78f4c2-33a5-40eb-a0de-110435805e15","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615917.9990642} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"f1799069593caec46110d168878954a3","responseTime":25,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce415720-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/7842052b-d6b1-4db4-9b35-0b40fc78d853/signaling 200 33ms","method":"POST","requestID":"ce415720-50eb-11ef-8434-2f6d198c7397","responseTime":33,"status":200,"url":"/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce4045b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/7842052b-d6b1-4db4-9b35-0b40fc78d853? 200 42ms","method":"GET","requestID":"ce4045b0-50eb-11ef-8434-2f6d198c7397","responseTime":42,"status":200,"url":"/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce40bae0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412? 200 41ms","method":"GET","requestID":"ce40bae0-50eb-11ef-8434-2f6d198c7397","responseTime":41,"status":200,"url":"/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce4771a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce480de0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:18Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/bde46b22-488f-47c5-a997-4c69b8294182","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"f1799069593caec46110d168878954a3"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fcf4e89-f714-4c3d-92d6-6a825ea19412","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c3697197-d9c1-4938-95a1-8171a2782a7f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615918.017532} authorization-1 | {"client_addr":"127.0.0.1:39890","level":"info","msg":"Received request.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.744452,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:18Z"} experiment-1 | {"level":"info","message":"POST /experiments? 201 185ms","method":"POST","requestID":"f1799069593caec46110d168878954a3","responseTime":185,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ce4771a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412","object_type":"device","rebac_allow":false,"scope_allow":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":"ce4771a0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:25:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"782","request_time":"0.190","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f1799069593caec46110d168878954a3"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7842052b-d6b1-4db4-9b35-0b40fc78d853","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dc1b6d1a-7c61-4b5f-b44f-0f0c8408292d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615918.02107} authorization-1 | {"client_addr":"127.0.0.1:39890","level":"info","msg":"Sent response.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.029819,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ce480de0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853","object_type":"device","rebac_allow":false,"scope_allow":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":"ce480de0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxOH0.vShns-2NHLwOsEOKimXzRZpBM0D1YPusdYuCPkwIRMU","level":"info","message":"auth send jwt","requestID":"78a44efd97dc0897c6a49e5239f30992"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"78a44efd97dc0897c6a49e5239f30992","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce4771a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412/signaling 200 17ms","method":"POST","requestID":"ce4771a0-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"78a44efd97dc0897c6a49e5239f30992"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce480de0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/7842052b-d6b1-4db4-9b35-0b40fc78d853/signaling 200 18ms","method":"POST","requestID":"ce480de0-50eb-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.902982,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"78a44efd97dc0897c6a49e5239f30992","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615918,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxOH0.vShns-2NHLwOsEOKimXzRZpBM0D1YPusdYuCPkwIRMU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"78a44efd97dc0897c6a49e5239f30992","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce4b4230-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25: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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7842052b-d6b1-4db4-9b35-0b40fc78d853","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7842052b-d6b1-4db4-9b35-0b40fc78d853","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:15.563626474Z"}]},"request_id":"cb4284a6-6b08-47fb-8107-950842d9e78f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615918.0403674} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fcf4e89-f714-4c3d-92d6-6a825ea19412","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bfa30953-046a-42bf-85a7-303db99ad436","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615918.0405614} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"78a44efd97dc0897c6a49e5239f30992","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.24836,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ce4b4230-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412","object_type":"device","rebac_allow":false,"scope_allow":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":"ce4b4230-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"78a44efd97dc0897c6a49e5239f30992"} gateway-1 | {"time_local":"02/Aug/2024:16:25:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7842052b-d6b1-4db4-9b35-0b40fc78d853? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"78a44efd97dc0897c6a49e5239f30992"} device-1 | {"level":"info","message":"GET /devices/7842052b-d6b1-4db4-9b35-0b40fc78d853? 200 19ms","method":"GET","requestID":"78a44efd97dc0897c6a49e5239f30992","responseTime":19,"status":200,"url":"/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce4b4230-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412/signaling 200 13ms","method":"POST","requestID":"ce4b4230-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bde46b22-488f-47c5-a997-4c69b8294182"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"f1799069593caec46110d168878954a3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce4db330-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxOH0.vShns-2NHLwOsEOKimXzRZpBM0D1YPusdYuCPkwIRMU","level":"info","message":"auth send jwt","requestID":"dd75345e0b681c7d0817ed9262e282c4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dd75345e0b681c7d0817ed9262e282c4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce4dda40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dd75345e0b681c7d0817ed9262e282c4"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:18Z"} authorization-1 | {"client_addr":"127.0.0.1:39890","level":"info","msg":"Received request.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.019808,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ce4db330-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615917,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxN30.FM7PDidWNFtbeYPf4iRiTd5XYv6IQTkvgrKG0UQEI2w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ce4db330-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39890","level":"info","msg":"Sent response.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.000542,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ce4dda40-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615917,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxN30.FM7PDidWNFtbeYPf4iRiTd5XYv6IQTkvgrKG0UQEI2w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ce4dda40-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.754434,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dd75345e0b681c7d0817ed9262e282c4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615918,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxOH0.vShns-2NHLwOsEOKimXzRZpBM0D1YPusdYuCPkwIRMU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"dd75345e0b681c7d0817ed9262e282c4","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7842052b-d6b1-4db4-9b35-0b40fc78d853","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7842052b-d6b1-4db4-9b35-0b40fc78d853","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:15.563626474Z"}]},"request_id":"8a1514a6-3813-4675-8510-7ae5aeb2720a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615918.062245} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"ce4db330-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fcf4e89-f714-4c3d-92d6-6a825ea19412","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fcf4e89-f714-4c3d-92d6-6a825ea19412","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:15.615564074Z"}]},"request_id":"65bf3d97-faac-4ea4-b452-28826304d960","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615918.0654488} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ce4dda40-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce4db330-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fcf4e89-f714-4c3d-92d6-6a825ea19412","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fcf4e89-f714-4c3d-92d6-6a825ea19412","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:15.615564074Z"}]},"request_id":"3c5e0a0f-8ffa-4034-926d-c09e8c7c4075","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615918.0682518} device-1 | {"level":"info","message":"GET /devices/7842052b-d6b1-4db4-9b35-0b40fc78d853? 200 18ms","method":"GET","requestID":"ce4db330-50eb-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dd75345e0b681c7d0817ed9262e282c4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce4dda40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412? 200 21ms","method":"GET","requestID":"ce4dda40-50eb-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dd75345e0b681c7d0817ed9262e282c4"} gateway-1 | {"time_local":"02/Aug/2024:16:25:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dd75345e0b681c7d0817ed9262e282c4"} device-1 | {"level":"info","message":"GET /devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412? 200 20ms","method":"GET","requestID":"dd75345e0b681c7d0817ed9262e282c4","responseTime":20,"status":200,"url":"/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bde46b22-488f-47c5-a997-4c69b8294182"},"level":"info","message":"Building connection plan","requestID":"f1799069593caec46110d168878954a3"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"71c91b82-e30e-463b-afc5-e84d8274a848"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"fb21ec83-d4f6-405f-8bed-b855d715fd63"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"2f9a0d9a-8f4a-4266-bb59-c821d5442c6f"}]},"level":"info","message":"Built pairwise service configurations","requestID":"f1799069593caec46110d168878954a3"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"f1799069593caec46110d168878954a3"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"ce515cb0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.17767,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ce515cb0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615917,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkxN30.FM7PDidWNFtbeYPf4iRiTd5XYv6IQTkvgrKG0UQEI2w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ce515cb0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"19fde522-2cf9-4b22-989f-fdfb9735e45c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615918.0888762} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ab535433-ff7f-42ab-a9a8-61b14b411b14","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615918.089194} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ce515cb0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"ce515cb0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"ce515cb0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/a258d7c5-eb06-4642-9224-a63a8a4d10ee'","requestID":"ce515cb0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/a258d7c5-eb06-4642-9224-a63a8a4d10ee'","requestID":"ce515cb0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"ce515cb0-50eb-11ef-8434-2f6d198c7397"} 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":"ce515cb0-50eb-11ef-8434-2f6d198c7397","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":"ce515cb0-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bde46b22-488f-47c5-a997-4c69b8294182"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"f1799069593caec46110d168878954a3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce59c120-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:18Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7842052b-d6b1-4db4-9b35-0b40fc78d853","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fda0ddd1-494b-4f42-af83-9c235108852b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615918.135698} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.367784,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ce59c120-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853","object_type":"device","rebac_allow":false,"scope_allow":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":"ce59c120-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce59c120-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/7842052b-d6b1-4db4-9b35-0b40fc78d853/signaling 200 10ms","method":"POST","requestID":"ce59c120-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce5b6ed0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:18Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fcf4e89-f714-4c3d-92d6-6a825ea19412","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"efa2bac0-2446-4dd4-b9bf-838ddb6526a4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615918.146275} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.450748,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ce5b6ed0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412","object_type":"device","rebac_allow":false,"scope_allow":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":"ce5b6ed0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce5b6ed0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412/signaling 200 10ms","method":"POST","requestID":"ce5b6ed0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412/signaling"} device-1 | {"device":"9fcf4e89-f714-4c3d-92d6-6a825ea19412","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"9fcf4e89-f714-4c3d-92d6-6a825ea19412","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"7842052b-d6b1-4db4-9b35-0b40fc78d853","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"a258d7c5-eb06-4642-9224-a63a8a4d10ee","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 7832639121824563205 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=msid-semantic: WMS\r\nm=application 9 DTLS/SCTP 5000\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:cVjk\r\na=ice-pwd:xxK2GfhkoQzLuwZYawaDgs40\r\na=ice-options:trickle\r\na=fingerprint:sha-256 07:E9:7F:3C:AE:2A:8A:00:43:55:93:9F:E3:A2:26:F5:6C:99:68:E0:A1:3F:A8:94:9B:76:BD:03:65:FA:7E:83\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"9fcf4e89-f714-4c3d-92d6-6a825ea19412","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2081284789 1 udp 2113937151 072cec31-2c35-4710-a561-71ad785532a4.local 42845 typ host generation 0 ufrag cVjk network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"9fcf4e89-f714-4c3d-92d6-6a825ea19412","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"9fcf4e89-f714-4c3d-92d6-6a825ea19412","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:1951770994 1 udp 1677729535 141.24.211.56 42845 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag cVjk network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"9fcf4e89-f714-4c3d-92d6-6a825ea19412","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a258d7c5-eb06-4642-9224-a63a8a4d10ee' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a258d7c5-eb06-4642-9224-a63a8a4d10ee","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9fcf4e89-f714-4c3d-92d6-6a825ea19412","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412'"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"aa35afd7f50f162453f040a59b307dbf","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":"aa35afd7f50f162453f040a59b307dbf","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/a258d7c5-eb06-4642-9224-a63a8a4d10ee"}}},"level":"info","message":"received a callback","requestID":"aa35afd7f50f162453f040a59b307dbf"} device-1 | {"device":"7842052b-d6b1-4db4-9b35-0b40fc78d853","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7842052b-d6b1-4db4-9b35-0b40fc78d853","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7842052b-d6b1-4db4-9b35-0b40fc78d853","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"aa35afd7f50f162453f040a59b307dbf","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25: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":"aa35afd7f50f162453f040a59b307dbf"} device-1 | {"data":{"peerconnection":"a258d7c5-eb06-4642-9224-a63a8a4d10ee","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7842052b-d6b1-4db4-9b35-0b40fc78d853","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"9fcf4e89-f714-4c3d-92d6-6a825ea19412","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"7842052b-d6b1-4db4-9b35-0b40fc78d853","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"a258d7c5-eb06-4642-9224-a63a8a4d10ee","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9fcf4e89-f714-4c3d-92d6-6a825ea19412","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a258d7c5-eb06-4642-9224-a63a8a4d10ee' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a258d7c5-eb06-4642-9224-a63a8a4d10ee","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e240ae034e43a4e06efefd77771943e2","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":"e240ae034e43a4e06efefd77771943e2","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/a258d7c5-eb06-4642-9224-a63a8a4d10ee"}}},"level":"info","message":"received a callback","requestID":"e240ae034e43a4e06efefd77771943e2"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"cf999420-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:20Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa258d7c5-eb06-4642-9224-a63a8a4d10ee","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"feb35c75-1a39-4bac-b2af-e1675aa6b077","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615920.2316842} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.605107,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a258d7c5-eb06-4642-9224-a63a8a4d10ee","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cf999420-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/a258d7c5-eb06-4642-9224-a63a8a4d10ee","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":"cf999420-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"cf999420-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/a258d7c5-eb06-4642-9224-a63a8a4d10ee 200 10ms","method":"GET","requestID":"cf999420-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/peerconnections/a258d7c5-eb06-4642-9224-a63a8a4d10ee"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 34ms","method":"POST","requestID":"e240ae034e43a4e06efefd77771943e2","responseTime":34,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25: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.038","http_referrer":"","http_user_agent":"node-fetch","requestID":"e240ae034e43a4e06efefd77771943e2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cf9e00f0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:20Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fcf4e89-f714-4c3d-92d6-6a825ea19412","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c6823954-37de-4740-b3c9-930fbe6058c7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615920.2608027} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.527172,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cf9e00f0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412","object_type":"device","rebac_allow":false,"scope_allow":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":"cf9e00f0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cf9e00f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412/signaling 200 11ms","method":"POST","requestID":"cf9e00f0-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cf9ffcc0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:20Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7842052b-d6b1-4db4-9b35-0b40fc78d853","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a5b1330b-587a-4c11-8bbc-c2cf66c55b18","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615920.2745183} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.176783,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cf9ffcc0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853","object_type":"device","rebac_allow":false,"scope_allow":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":"cf9ffcc0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cf9ffcc0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/7842052b-d6b1-4db4-9b35-0b40fc78d853/signaling 200 11ms","method":"POST","requestID":"cf9ffcc0-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMH0.noMS8Qzch268CXTuOSmyfZ3iZOPyQaIWe2F92_AbwyQ","level":"info","message":"auth send jwt","requestID":"f299c8b51741821dfcd527bba86f3011"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f299c8b51741821dfcd527bba86f3011","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/bde46b22-488f-47c5-a997-4c69b8294182","requestID":"f299c8b51741821dfcd527bba86f3011"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.174546,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/bde46b22-488f-47c5-a997-4c69b8294182","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f299c8b51741821dfcd527bba86f3011","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/bde46b22-488f-47c5-a997-4c69b8294182","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615920,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMH0.noMS8Qzch268CXTuOSmyfZ3iZOPyQaIWe2F92_AbwyQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f299c8b51741821dfcd527bba86f3011","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/bde46b22-488f-47c5-a997-4c69b8294182","requestID":"f299c8b51741821dfcd527bba86f3011"} gateway-1 | {"time_local":"02/Aug/2024:16:25:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/bde46b22-488f-47c5-a997-4c69b8294182 HTTP/1.1","status": "200","body_bytes_sent":"855","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f299c8b51741821dfcd527bba86f3011"} experiment-1 | {"level":"info","message":"GET /experiments/bde46b22-488f-47c5-a997-4c69b8294182 200 16ms","method":"GET","requestID":"f299c8b51741821dfcd527bba86f3011","responseTime":16,"status":200,"url":"/experiments/bde46b22-488f-47c5-a997-4c69b8294182"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMH0.noMS8Qzch268CXTuOSmyfZ3iZOPyQaIWe2F92_AbwyQ","level":"info","message":"auth send jwt","requestID":"d47279e61399f80632ce598e111886ef"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d47279e61399f80632ce598e111886ef","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/bde46b22-488f-47c5-a997-4c69b8294182","requestID":"d47279e61399f80632ce598e111886ef"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.34516,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:20Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/bde46b22-488f-47c5-a997-4c69b8294182","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d47279e61399f80632ce598e111886ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/bde46b22-488f-47c5-a997-4c69b8294182","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615920,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMH0.noMS8Qzch268CXTuOSmyfZ3iZOPyQaIWe2F92_AbwyQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d47279e61399f80632ce598e111886ef","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bde46b22-488f-47c5-a997-4c69b8294182"},"level":"info","message":"Attempting to finish experiment","requestID":"d47279e61399f80632ce598e111886ef"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"cfbe5a30-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.289099,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:20Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a258d7c5-eb06-4642-9224-a63a8a4d10ee","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cfbe5a30-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/a258d7c5-eb06-4642-9224-a63a8a4d10ee","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615920,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMH0.noMS8Qzch268CXTuOSmyfZ3iZOPyQaIWe2F92_AbwyQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cfbe5a30-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a258d7c5-eb06-4642-9224-a63a8a4d10ee","device":"9fcf4e89-f714-4c3d-92d6-6a825ea19412","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"7842052b-d6b1-4db4-9b35-0b40fc78d853","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7842052b-d6b1-4db4-9b35-0b40fc78d853","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7842052b-d6b1-4db4-9b35-0b40fc78d853","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a258d7c5-eb06-4642-9224-a63a8a4d10ee' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/a258d7c5-eb06-4642-9224-a63a8a4d10ee' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a258d7c5-eb06-4642-9224-a63a8a4d10ee","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa258d7c5-eb06-4642-9224-a63a8a4d10ee': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa258d7c5-eb06-4642-9224-a63a8a4d10ee","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"12b51b2a-e287-42c6-abed-2e1ab668984f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615920.4954903} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8c55cb2c-6ced-4f91-855e-38dd19d0336c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615920.4958274} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"25dd1ad5ee970478c7e7d0a0db10a38d","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 12ms","method":"POST","requestID":"cfbe5a30-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"25dd1ad5ee970478c7e7d0a0db10a38d","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a258d7c5-eb06-4642-9224-a63a8a4d10ee"}}},"level":"info","message":"received a callback","requestID":"25dd1ad5ee970478c7e7d0a0db10a38d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"781153d39ca83923b34f76d6a50f74a3","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":"781153d39ca83923b34f76d6a50f74a3","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a258d7c5-eb06-4642-9224-a63a8a4d10ee"}}},"level":"info","message":"received a callback","requestID":"781153d39ca83923b34f76d6a50f74a3"} device-1 | {"data":{"peerconnection":"a258d7c5-eb06-4642-9224-a63a8a4d10ee","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"cfbe5a30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/a258d7c5-eb06-4642-9224-a63a8a4d10ee 204 50ms","method":"DELETE","requestID":"cfbe5a30-50eb-11ef-8434-2f6d198c7397","responseTime":50,"status":204,"url":"/peerconnections/a258d7c5-eb06-4642-9224-a63a8a4d10ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bde46b22-488f-47c5-a997-4c69b8294182"},"level":"info","message":"Successfully finished experiment","requestID":"d47279e61399f80632ce598e111886ef"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cfc97dc0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:20Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fcf4e89-f714-4c3d-92d6-6a825ea19412","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"65eca37e-c4d2-41e2-9686-368f4079b8ab","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615920.5465674} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.947917,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cfc97dc0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412","object_type":"device","rebac_allow":false,"scope_allow":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":"cfc97dc0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbde46b22-488f-47c5-a997-4c69b8294182': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbde46b22-488f-47c5-a997-4c69b8294182","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"88c9b5e3-daed-41db-9a86-b887ab0b0f0c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615920.5514553} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cfc97dc0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412/signaling 200 12ms","method":"POST","requestID":"cfc97dc0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/9fcf4e89-f714-4c3d-92d6-6a825ea19412/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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3464de46-5049-48f6-9c75-ba7d8e19e28a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615920.5519106} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"d47279e61399f80632ce598e111886ef","responseTime":15,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cfcbc7b0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:20Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7842052b-d6b1-4db4-9b35-0b40fc78d853","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eff5a847-57f3-428e-a13b-8b530910fc0e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615920.5618172} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.954721,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cfcbc7b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853","object_type":"device","rebac_allow":false,"scope_allow":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":"cfcbc7b0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cfcbc7b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/7842052b-d6b1-4db4-9b35-0b40fc78d853/signaling 200 13ms","method":"POST","requestID":"cfcbc7b0-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/7842052b-d6b1-4db4-9b35-0b40fc78d853/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/bde46b22-488f-47c5-a997-4c69b8294182","requestID":"d47279e61399f80632ce598e111886ef"} gateway-1 | {"time_local":"02/Aug/2024:16:25:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/bde46b22-488f-47c5-a997-4c69b8294182 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":"d47279e61399f80632ce598e111886ef"} experiment-1 | {"level":"info","message":"DELETE /experiments/bde46b22-488f-47c5-a997-4c69b8294182 204 166ms","method":"DELETE","requestID":"d47279e61399f80632ce598e111886ef","responseTime":166,"status":204,"url":"/experiments/bde46b22-488f-47c5-a997-4c69b8294182"} gateway-1 | {"time_local":"02/Aug/2024:16:25:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2925","request_time":"4.414","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"30b40bd1af1efef5089104ff80a79121"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 118ms","method":"POST","requestID":"25dd1ad5ee970478c7e7d0a0db10a38d","responseTime":118,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25: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.123","http_referrer":"","http_user_agent":"node-fetch","requestID":"25dd1ad5ee970478c7e7d0a0db10a38d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 118ms","method":"POST","requestID":"781153d39ca83923b34f76d6a50f74a3","responseTime":118,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25: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.125","http_referrer":"","http_user_agent":"node-fetch","requestID":"781153d39ca83923b34f76d6a50f74a3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMH0.noMS8Qzch268CXTuOSmyfZ3iZOPyQaIWe2F92_AbwyQ","level":"info","message":"auth send jwt","requestID":"baea4adf3c4112e0a8b04f7b39fb6f6d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"baea4adf3c4112e0a8b04f7b39fb6f6d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"baea4adf3c4112e0a8b04f7b39fb6f6d"} gateway-1 | {"time_local":"02/Aug/2024:16:25:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2462","request_time":"2.944","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":"1317ce70fec162493f6350db168ee673"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.989217,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"baea4adf3c4112e0a8b04f7b39fb6f6d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615920,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMH0.noMS8Qzch268CXTuOSmyfZ3iZOPyQaIWe2F92_AbwyQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"baea4adf3c4112e0a8b04f7b39fb6f6d","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/7842052b-d6b1-4db4-9b35-0b40fc78d853' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa220d540-4b70-43a1-b782-f6d7a275e771","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8f9a7feb-2051-4812-bf59-49fa50645c11","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615920.645841} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"baea4adf3c4112e0a8b04f7b39fb6f6d","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/9fcf4e89-f714-4c3d-92d6-6a825ea19412' 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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"97f1d18b-705a-45b3-9cfe-52f635962009","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615920.6512017} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"baea4adf3c4112e0a8b04f7b39fb6f6d","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa220d540-4b70-43a1-b782-f6d7a275e771","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"0d8cd18c-8933-4910-aceb-b7b81c8209c2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615920.6607606} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2c094bf9-96c7-48a8-888a-797d3d407d2f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615920.6609185} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"baea4adf3c4112e0a8b04f7b39fb6f6d","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa220d540-4b70-43a1-b782-f6d7a275e771","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa220d540-4b70-43a1-b782-f6d7a275e771","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:20.660735433Z"}]},"request_id":"039adae2-709b-4a4c-861b-c11e476a04ca","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615920.6657853} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"baea4adf3c4112e0a8b04f7b39fb6f6d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"baea4adf3c4112e0a8b04f7b39fb6f6d"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"baea4adf3c4112e0a8b04f7b39fb6f6d","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"baea4adf3c4112e0a8b04f7b39fb6f6d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMH0.noMS8Qzch268CXTuOSmyfZ3iZOPyQaIWe2F92_AbwyQ","level":"info","message":"auth send jwt","requestID":"b624da79335ffbf928c405b762c0254b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b624da79335ffbf928c405b762c0254b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b624da79335ffbf928c405b762c0254b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.745487,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b624da79335ffbf928c405b762c0254b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615920,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMH0.noMS8Qzch268CXTuOSmyfZ3iZOPyQaIWe2F92_AbwyQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b624da79335ffbf928c405b762c0254b","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa68e95c6-ed7a-44c2-a545-cf01158b2bb0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bb6cb96e-a750-4175-960c-f484847ed37b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615920.6964571} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b624da79335ffbf928c405b762c0254b","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ea790bb3-d404-46fa-af8f-1703278a7fb0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615920.7013881} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b624da79335ffbf928c405b762c0254b","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa68e95c6-ed7a-44c2-a545-cf01158b2bb0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"bbbb07f6-78b0-4add-aed5-b3eec52021cb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615920.7123616} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6463fa4f-be87-49cd-bb95-4c7c80fe0489","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615920.7124915} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"b624da79335ffbf928c405b762c0254b","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa68e95c6-ed7a-44c2-a545-cf01158b2bb0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa68e95c6-ed7a-44c2-a545-cf01158b2bb0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:20.712339809Z"}]},"request_id":"c67160eb-e20a-4dd6-9346-2b51d12bf3b5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615920.7171297} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b624da79335ffbf928c405b762c0254b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b624da79335ffbf928c405b762c0254b"} gateway-1 | {"time_local":"02/Aug/2024:16:25:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b624da79335ffbf928c405b762c0254b"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"b624da79335ffbf928c405b762c0254b","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU","level":"info","message":"auth send jwt","requestID":"2e0b29db8e1466e9e16608e6f25edbef"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2e0b29db8e1466e9e16608e6f25edbef","responseTime":5,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU","level":"info","message":"auth send jwt","requestID":"a6c6794ecb99c3611990a2e742844a00"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a6c6794ecb99c3611990a2e742844a00","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"2e0b29db8e1466e9e16608e6f25edbef"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a6c6794ecb99c3611990a2e742844a00"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.657665,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"2e0b29db8e1466e9e16608e6f25edbef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615921,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2e0b29db8e1466e9e16608e6f25edbef","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39890","level":"info","msg":"Received request.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"client_addr":"127.0.0.1:39890","level":"info","msg":"Sent response.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.580315,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a6c6794ecb99c3611990a2e742844a00","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615921,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a6c6794ecb99c3611990a2e742844a00","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa220d540-4b70-43a1-b782-f6d7a275e771","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa220d540-4b70-43a1-b782-f6d7a275e771","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:20.660735433Z"}]},"request_id":"c5075f29-349d-4512-91f4-f27a507ab20c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.2319252} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2e0b29db8e1466e9e16608e6f25edbef","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa68e95c6-ed7a-44c2-a545-cf01158b2bb0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa68e95c6-ed7a-44c2-a545-cf01158b2bb0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:20.712339809Z"}]},"request_id":"d1dfd26f-ed40-401b-b01a-6fa4cf63716d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.2325988} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a6c6794ecb99c3611990a2e742844a00","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"303b541a-7ad8-43d5-a663-6c7232808be8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.2368107} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"2e0b29db8e1466e9e16608e6f25edbef","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b38fab43-5dfb-4308-b343-4ed00f4bf115","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.2383611} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"a6c6794ecb99c3611990a2e742844a00","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa68e95c6-ed7a-44c2-a545-cf01158b2bb0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa68e95c6-ed7a-44c2-a545-cf01158b2bb0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:20.712339809Z"}]},"request_id":"fe772919-ded7-43dc-8a6a-b7e8dd45db19","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.2412925} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a6c6794ecb99c3611990a2e742844a00","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a6c6794ecb99c3611990a2e742844a00"} gateway-1 | {"time_local":"02/Aug/2024:16:25:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.032","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"a6c6794ecb99c3611990a2e742844a00"} device-1 | {"level":"info","message":"PATCH /devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0 200 24ms","method":"PATCH","requestID":"a6c6794ecb99c3611990a2e742844a00","responseTime":24,"status":200,"url":"/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU","level":"info","message":"auth send jwt","requestID":"a94f4aa93f9b0effdf1747727f3c34a1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a94f4aa93f9b0effdf1747727f3c34a1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a94f4aa93f9b0effdf1747727f3c34a1"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa220d540-4b70-43a1-b782-f6d7a275e771","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa220d540-4b70-43a1-b782-f6d7a275e771","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:20.660735433Z"}]},"request_id":"9cffee7d-c71a-4281-bc22-119d11cd73c3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.2529142} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2e0b29db8e1466e9e16608e6f25edbef","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.711278,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:21Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"2e0b29db8e1466e9e16608e6f25edbef"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a94f4aa93f9b0effdf1747727f3c34a1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615921,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a94f4aa93f9b0effdf1747727f3c34a1","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:25:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a220d540-4b70-43a1-b782-f6d7a275e771 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.045","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"2e0b29db8e1466e9e16608e6f25edbef"} device-1 | {"level":"info","message":"PATCH /devices/a220d540-4b70-43a1-b782-f6d7a275e771 200 38ms","method":"PATCH","requestID":"2e0b29db8e1466e9e16608e6f25edbef","responseTime":38,"status":200,"url":"/devices/a220d540-4b70-43a1-b782-f6d7a275e771"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU","level":"info","message":"auth send jwt","requestID":"0b2057d4ef8b38322f40e22d2d7cb943"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0b2057d4ef8b38322f40e22d2d7cb943","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0b2057d4ef8b38322f40e22d2d7cb943"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.84017,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0b2057d4ef8b38322f40e22d2d7cb943","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615921,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0b2057d4ef8b38322f40e22d2d7cb943","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a94f4aa93f9b0effdf1747727f3c34a1"} gateway-1 | {"time_local":"02/Aug/2024:16:25:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"a94f4aa93f9b0effdf1747727f3c34a1"} device-1 | {"level":"info","message":"POST /devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0/websocket 200 20ms","method":"POST","requestID":"a94f4aa93f9b0effdf1747727f3c34a1","responseTime":20,"status":200,"url":"/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0b2057d4ef8b38322f40e22d2d7cb943"} gateway-1 | {"time_local":"02/Aug/2024:16:25:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a220d540-4b70-43a1-b782-f6d7a275e771/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"0b2057d4ef8b38322f40e22d2d7cb943"} device-1 | {"level":"info","message":"POST /devices/a220d540-4b70-43a1-b782-f6d7a275e771/websocket 200 19ms","method":"POST","requestID":"0b2057d4ef8b38322f40e22d2d7cb943","responseTime":19,"status":200,"url":"/devices/a220d540-4b70-43a1-b782-f6d7a275e771/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU","level":"info","message":"auth send jwt","requestID":"14857d5a3d77322599a10da47a37ddd3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"14857d5a3d77322599a10da47a37ddd3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14857d5a3d77322599a10da47a37ddd3"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.715887,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"14857d5a3d77322599a10da47a37ddd3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615921,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"14857d5a3d77322599a10da47a37ddd3","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa220d540-4b70-43a1-b782-f6d7a275e771","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa220d540-4b70-43a1-b782-f6d7a275e771","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:20.660735433Z"}]},"request_id":"5100223d-1e2b-4250-946a-b000ad796e22","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.3174403} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"14857d5a3d77322599a10da47a37ddd3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14857d5a3d77322599a10da47a37ddd3"} gateway-1 | {"time_local":"02/Aug/2024:16:25:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a220d540-4b70-43a1-b782-f6d7a275e771? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"14857d5a3d77322599a10da47a37ddd3"} device-1 | {"level":"info","message":"GET /devices/a220d540-4b70-43a1-b782-f6d7a275e771? 200 14ms","method":"GET","requestID":"14857d5a3d77322599a10da47a37ddd3","responseTime":14,"status":200,"url":"/devices/a220d540-4b70-43a1-b782-f6d7a275e771?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU","level":"info","message":"auth send jwt","requestID":"541798686e11122c80b8fdb2946d3e3b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"541798686e11122c80b8fdb2946d3e3b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"541798686e11122c80b8fdb2946d3e3b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.91625,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"541798686e11122c80b8fdb2946d3e3b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615921,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"541798686e11122c80b8fdb2946d3e3b","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa68e95c6-ed7a-44c2-a545-cf01158b2bb0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa68e95c6-ed7a-44c2-a545-cf01158b2bb0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:20.712339809Z"}]},"request_id":"9512df01-e073-4c0e-8b05-435854bd1610","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.3387086} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"541798686e11122c80b8fdb2946d3e3b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"541798686e11122c80b8fdb2946d3e3b"} device-1 | {"level":"info","message":"GET /devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0? 200 13ms","method":"GET","requestID":"541798686e11122c80b8fdb2946d3e3b","responseTime":13,"status":200,"url":"/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"541798686e11122c80b8fdb2946d3e3b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU","level":"info","message":"auth send jwt","requestID":"1c40b736030d22171330289aa6a29aee"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1c40b736030d22171330289aa6a29aee","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"1c40b736030d22171330289aa6a29aee"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.164293,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1c40b736030d22171330289aa6a29aee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615921,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1c40b736030d22171330289aa6a29aee","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba"},"level":"info","message":"Attempting to run experiment","requestID":"1c40b736030d22171330289aa6a29aee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba"},"level":"info","message":"Attempting to book experiment","requestID":"1c40b736030d22171330289aa6a29aee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba"},"level":"info","message":"Successfully booked experiment","requestID":"1c40b736030d22171330289aa6a29aee"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d04abbb0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d04ae2c0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.927453,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"client_addr":"127.0.0.1:39890","level":"info","msg":"Received request.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d04abbb0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615921,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d04abbb0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39890","level":"info","msg":"Sent response.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.436236,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d04ae2c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615921,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d04ae2c0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa220d540-4b70-43a1-b782-f6d7a275e771","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa220d540-4b70-43a1-b782-f6d7a275e771","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:20.660735433Z"}]},"request_id":"cfc76db0-5191-43a0-9c8c-fc15bc82b7d5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.3969865} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"d04abbb0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa68e95c6-ed7a-44c2-a545-cf01158b2bb0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa68e95c6-ed7a-44c2-a545-cf01158b2bb0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:20.712339809Z"}]},"request_id":"92fb9928-d022-475c-be10-8ab0eaf31e61","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.4031055} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d04ae2c0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d04abbb0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/a220d540-4b70-43a1-b782-f6d7a275e771? 200 20ms","method":"GET","requestID":"d04abbb0-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/a220d540-4b70-43a1-b782-f6d7a275e771?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d04ae2c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0? 200 20ms","method":"GET","requestID":"d04ae2c0-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba"},"level":"info","message":"Setting up experiment","requestID":"1c40b736030d22171330289aa6a29aee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"1c40b736030d22171330289aa6a29aee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba"},"level":"info","message":"Successfully locked booking for experiment","requestID":"1c40b736030d22171330289aa6a29aee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"1c40b736030d22171330289aa6a29aee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"1c40b736030d22171330289aa6a29aee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba"},"level":"info","message":"Attempting to update booking for experiment","requestID":"1c40b736030d22171330289aa6a29aee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba"},"level":"info","message":"Successfully updated booking for experiment","requestID":"1c40b736030d22171330289aa6a29aee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba"},"level":"info","message":"Successfully set up experiment","requestID":"1c40b736030d22171330289aa6a29aee"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d055b830-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d055df40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d0560650-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba"},"level":"info","message":"Successfully running experiment","requestID":"1c40b736030d22171330289aa6a29aee"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.800984,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d055b830-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615921,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d055b830-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39890","level":"info","msg":"Received request.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"client_addr":"127.0.0.1:39890","level":"info","msg":"Sent response.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.648061,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d055df40-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615921,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d055df40-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56862","level":"info","msg":"Received request.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa220d540-4b70-43a1-b782-f6d7a275e771","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"833c718e-4384-4715-9aae-23b7346d48a3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.4719598} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa68e95c6-ed7a-44c2-a545-cf01158b2bb0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa68e95c6-ed7a-44c2-a545-cf01158b2bb0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:20.712339809Z"}]},"request_id":"904a975e-723b-48ff-bd7f-18f850b7ba98","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.4723122} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d055df40-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:56862","level":"info","msg":"Sent response.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.066839,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d0560650-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771","object_type":"device","rebac_allow":false,"scope_allow":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":"d0560650-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa220d540-4b70-43a1-b782-f6d7a275e771","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa220d540-4b70-43a1-b782-f6d7a275e771","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:20.660735433Z"}]},"request_id":"83da0d23-0114-48a3-bdb0-a68a115139cc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.473449} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d055b830-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d055df40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0? 200 19ms","method":"GET","requestID":"d055df40-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d0560650-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/a220d540-4b70-43a1-b782-f6d7a275e771/signaling 200 19ms","method":"POST","requestID":"d0560650-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/a220d540-4b70-43a1-b782-f6d7a275e771/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d055b830-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/a220d540-4b70-43a1-b782-f6d7a275e771? 200 22ms","method":"GET","requestID":"d055b830-50eb-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/a220d540-4b70-43a1-b782-f6d7a275e771?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d0593aa0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9f5e70f6-9157-4938-a875-6ea4d61252ba#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9f5e70f6-9157-4938-a875-6ea4d61252ba","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"5b41dc88-147a-40aa-976e-a8c05a5d4b86","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.4836705} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e06d70a7-8faa-4fe6-993e-4d833b6b07e3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.4838953} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d05988c0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"1c40b736030d22171330289aa6a29aee","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"client_addr":"127.0.0.1:39890","level":"info","msg":"Received request.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa68e95c6-ed7a-44c2-a545-cf01158b2bb0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"01d6fb33-6f4f-4124-b4f6-5fdcb2907fcc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.4887002} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.048577,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d0593aa0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0","object_type":"device","rebac_allow":false,"scope_allow":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":"d0593aa0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa220d540-4b70-43a1-b782-f6d7a275e771","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a1190381-bcdd-499c-b2cc-e11378ef263d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.4905117} authorization-1 | {"client_addr":"127.0.0.1:39890","level":"info","msg":"Sent response.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.635112,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d05988c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771","object_type":"device","rebac_allow":false,"scope_allow":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":"d05988c0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"1c40b736030d22171330289aa6a29aee"} gateway-1 | {"time_local":"02/Aug/2024:16:25:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"786","request_time":"0.149","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1c40b736030d22171330289aa6a29aee"} experiment-1 | {"level":"info","message":"POST /experiments? 201 146ms","method":"POST","requestID":"1c40b736030d22171330289aa6a29aee","responseTime":146,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d0593aa0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0/signaling 200 12ms","method":"POST","requestID":"d0593aa0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d05988c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/a220d540-4b70-43a1-b782-f6d7a275e771/signaling 200 12ms","method":"POST","requestID":"d05988c0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/a220d540-4b70-43a1-b782-f6d7a275e771/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d05baba0-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU","level":"info","message":"auth send jwt","requestID":"80a6e2db96e89711cd363f868e76313a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"80a6e2db96e89711cd363f868e76313a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"80a6e2db96e89711cd363f868e76313a"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"client_addr":"127.0.0.1:39890","level":"info","msg":"Received request.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"client_addr":"127.0.0.1:39890","level":"info","msg":"Sent response.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.750073,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"80a6e2db96e89711cd363f868e76313a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615921,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"80a6e2db96e89711cd363f868e76313a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa68e95c6-ed7a-44c2-a545-cf01158b2bb0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"961f7583-3a3b-4545-8617-2172228fd797","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.5026178} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.44761,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d05baba0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0","object_type":"device","rebac_allow":false,"scope_allow":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":"d05baba0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa220d540-4b70-43a1-b782-f6d7a275e771","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa220d540-4b70-43a1-b782-f6d7a275e771","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:20.660735433Z"}]},"request_id":"317ee9c9-7e1b-4c53-a81a-2896a061c183","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.5068204} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d05baba0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"80a6e2db96e89711cd363f868e76313a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0/signaling 200 10ms","method":"POST","requestID":"d05baba0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"1c40b736030d22171330289aa6a29aee"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d05d8060-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"80a6e2db96e89711cd363f868e76313a"} gateway-1 | {"time_local":"02/Aug/2024:16:25:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a220d540-4b70-43a1-b782-f6d7a275e771? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"80a6e2db96e89711cd363f868e76313a"} device-1 | {"level":"info","message":"GET /devices/a220d540-4b70-43a1-b782-f6d7a275e771? 200 13ms","method":"GET","requestID":"80a6e2db96e89711cd363f868e76313a","responseTime":13,"status":200,"url":"/devices/a220d540-4b70-43a1-b782-f6d7a275e771?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d05dce80-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.081179,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"client_addr":"127.0.0.1:39890","level":"info","msg":"Received request.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d05d8060-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615921,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d05d8060-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU","level":"info","message":"auth send jwt","requestID":"4d84ae2e6e580535641e59ee1eebc234"} authorization-1 | {"client_addr":"127.0.0.1:39890","level":"info","msg":"Sent response.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.902736,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:21Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4d84ae2e6e580535641e59ee1eebc234","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d05dce80-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615921,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d05dce80-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4d84ae2e6e580535641e59ee1eebc234"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa220d540-4b70-43a1-b782-f6d7a275e771","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa220d540-4b70-43a1-b782-f6d7a275e771","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:20.660735433Z"}]},"request_id":"13eae8af-6e88-4c1b-b363-06b59e10ec5f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.519827} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d05d8060-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa68e95c6-ed7a-44c2-a545-cf01158b2bb0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa68e95c6-ed7a-44c2-a545-cf01158b2bb0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:20.712339809Z"}]},"request_id":"a73bcec3-df12-46cd-b810-50f96bf1deb0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.5205736} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d05dce80-50eb-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.808189,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"4d84ae2e6e580535641e59ee1eebc234","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615921,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4d84ae2e6e580535641e59ee1eebc234","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d05d8060-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/a220d540-4b70-43a1-b782-f6d7a275e771? 200 19ms","method":"GET","requestID":"d05d8060-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/a220d540-4b70-43a1-b782-f6d7a275e771?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d05dce80-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa68e95c6-ed7a-44c2-a545-cf01158b2bb0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa68e95c6-ed7a-44c2-a545-cf01158b2bb0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:20.712339809Z"}]},"request_id":"c8aca814-64a5-467e-b5be-57f445a1dead","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.5304828} device-1 | {"level":"info","message":"GET /devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0? 200 19ms","method":"GET","requestID":"d05dce80-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4d84ae2e6e580535641e59ee1eebc234","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba"},"level":"info","message":"Building connection plan","requestID":"1c40b736030d22171330289aa6a29aee"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"de5a2648-8cd6-4a87-adbb-6e47d2f903b5"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"c7addc94-a2b4-4619-8729-38bd5cb96ecf"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"6c6ad62c-60ef-4b1d-8fad-03034e2a0586"}]},"level":"info","message":"Built pairwise service configurations","requestID":"1c40b736030d22171330289aa6a29aee"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"1c40b736030d22171330289aa6a29aee"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"d06129e0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:21Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4d84ae2e6e580535641e59ee1eebc234"} gateway-1 | {"time_local":"02/Aug/2024:16:25:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4d84ae2e6e580535641e59ee1eebc234"} device-1 | {"level":"info","message":"GET /devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0? 200 19ms","method":"GET","requestID":"4d84ae2e6e580535641e59ee1eebc234","responseTime":19,"status":200,"url":"/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":3.1038,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d06129e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615921,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyMX0.nGqiKwBF273DjbnTuUoGIVfJ4nLneEY5oPw7IijaLBU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d06129e0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"a0a1166f-3a95-4b25-a2a2-d8cb5d12f688","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.5521307} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"75f2db31-b7e4-4536-b8d4-dfa3ed68c9f2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.5523467} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"d06129e0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"d06129e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"d06129e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/a0c4c2df-78fd-44cd-a3ce-81605655af32'","requestID":"d06129e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/a0c4c2df-78fd-44cd-a3ce-81605655af32'","requestID":"d06129e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"d06129e0-50eb-11ef-8434-2f6d198c7397"} 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":"d06129e0-50eb-11ef-8434-2f6d198c7397","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":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"d06129e0-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"1c40b736030d22171330289aa6a29aee"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d06a0380-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa220d540-4b70-43a1-b782-f6d7a275e771","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"46ceba47-aeea-44c7-81b0-23ec5d5233bf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.5968964} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.449422,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d06a0380-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771","object_type":"device","rebac_allow":false,"scope_allow":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":"d06a0380-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d06a0380-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/a220d540-4b70-43a1-b782-f6d7a275e771/signaling 200 8ms","method":"POST","requestID":"d06a0380-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/a220d540-4b70-43a1-b782-f6d7a275e771/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d06b8a20-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa68e95c6-ed7a-44c2-a545-cf01158b2bb0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3df30cf5-d569-4f41-b0d5-c7ebf7dc874f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615921.60656} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.106486,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d06b8a20-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0","object_type":"device","rebac_allow":false,"scope_allow":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":"d06b8a20-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d06b8a20-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0/signaling 200 8ms","method":"POST","requestID":"d06b8a20-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0/signaling"} device-1 | {"device":"a220d540-4b70-43a1-b782-f6d7a275e771","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"a0c4c2df-78fd-44cd-a3ce-81605655af32","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a68e95c6-ed7a-44c2-a545-cf01158b2bb0","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"a0c4c2df-78fd-44cd-a3ce-81605655af32","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a68e95c6-ed7a-44c2-a545-cf01158b2bb0","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a68e95c6-ed7a-44c2-a545-cf01158b2bb0","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a68e95c6-ed7a-44c2-a545-cf01158b2bb0","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a68e95c6-ed7a-44c2-a545-cf01158b2bb0","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a0c4c2df-78fd-44cd-a3ce-81605655af32' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a0c4c2df-78fd-44cd-a3ce-81605655af32","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"993de0cfce69416720e1381bf35b2312","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":"993de0cfce69416720e1381bf35b2312","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/a0c4c2df-78fd-44cd-a3ce-81605655af32"}}},"level":"info","message":"received a callback","requestID":"993de0cfce69416720e1381bf35b2312"} device-1 | {"device":"a220d540-4b70-43a1-b782-f6d7a275e771","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a220d540-4b70-43a1-b782-f6d7a275e771","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a220d540-4b70-43a1-b782-f6d7a275e771","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 12ms","method":"POST","requestID":"993de0cfce69416720e1381bf35b2312","responseTime":12,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:23 +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.016","http_referrer":"","http_user_agent":"node-fetch","requestID":"993de0cfce69416720e1381bf35b2312"} device-1 | {"device":"a68e95c6-ed7a-44c2-a545-cf01158b2bb0","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"a0c4c2df-78fd-44cd-a3ce-81605655af32","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a220d540-4b70-43a1-b782-f6d7a275e771","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a68e95c6-ed7a-44c2-a545-cf01158b2bb0","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a220d540-4b70-43a1-b782-f6d7a275e771","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"a0c4c2df-78fd-44cd-a3ce-81605655af32","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/a0c4c2df-78fd-44cd-a3ce-81605655af32' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a0c4c2df-78fd-44cd-a3ce-81605655af32","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cdf226dc14e79f4abda8dbea9f61b19d","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":"cdf226dc14e79f4abda8dbea9f61b19d","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/a0c4c2df-78fd-44cd-a3ce-81605655af32"}}},"level":"info","message":"received a callback","requestID":"cdf226dc14e79f4abda8dbea9f61b19d"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"d1aa24a0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:23Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa0c4c2df-78fd-44cd-a3ce-81605655af32","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8a5619d0-3516-4e10-bacb-933a75d5d02b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615923.6968644} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.719314,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a0c4c2df-78fd-44cd-a3ce-81605655af32","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d1aa24a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/a0c4c2df-78fd-44cd-a3ce-81605655af32","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":"d1aa24a0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"d1aa24a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/a0c4c2df-78fd-44cd-a3ce-81605655af32 200 12ms","method":"GET","requestID":"d1aa24a0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/peerconnections/a0c4c2df-78fd-44cd-a3ce-81605655af32"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 49ms","method":"POST","requestID":"cdf226dc14e79f4abda8dbea9f61b19d","responseTime":49,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:23 +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.055","http_referrer":"","http_user_agent":"node-fetch","requestID":"cdf226dc14e79f4abda8dbea9f61b19d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d1afa2e0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:23Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa68e95c6-ed7a-44c2-a545-cf01158b2bb0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"49b77df6-4a11-4a4f-96aa-1225758e3db8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615923.7317297} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.820457,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d1afa2e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0","object_type":"device","rebac_allow":false,"scope_allow":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":"d1afa2e0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d1afa2e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0/signaling 200 11ms","method":"POST","requestID":"d1afa2e0-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d1b19eb0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:23Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa220d540-4b70-43a1-b782-f6d7a275e771","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e20d3a4b-b1d5-4ed4-85bc-fccd2b596c3e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615923.7445493} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.050476,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d1b19eb0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771","object_type":"device","rebac_allow":false,"scope_allow":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":"d1b19eb0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d1b19eb0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/a220d540-4b70-43a1-b782-f6d7a275e771/signaling 200 10ms","method":"POST","requestID":"d1b19eb0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/a220d540-4b70-43a1-b782-f6d7a275e771/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyM30.MMhRSGZoZMHR8rD29DGPApPr_zAamWWwiQuxNo04azw","level":"info","message":"auth send jwt","requestID":"5be2f3d158d96fe9f8aba3e4419e8c05"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5be2f3d158d96fe9f8aba3e4419e8c05","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba","requestID":"5be2f3d158d96fe9f8aba3e4419e8c05"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.18626,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"5be2f3d158d96fe9f8aba3e4419e8c05","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615923,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyM30.MMhRSGZoZMHR8rD29DGPApPr_zAamWWwiQuxNo04azw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5be2f3d158d96fe9f8aba3e4419e8c05","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba","requestID":"5be2f3d158d96fe9f8aba3e4419e8c05"} experiment-1 | {"level":"info","message":"GET /experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba 200 15ms","method":"GET","requestID":"5be2f3d158d96fe9f8aba3e4419e8c05","responseTime":15,"status":200,"url":"/experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba"} gateway-1 | {"time_local":"02/Aug/2024:16:25:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba HTTP/1.1","status": "200","body_bytes_sent":"859","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5be2f3d158d96fe9f8aba3e4419e8c05"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyM30.MMhRSGZoZMHR8rD29DGPApPr_zAamWWwiQuxNo04azw","level":"info","message":"auth send jwt","requestID":"33224c791fe4dd36a6dede21315275c6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"33224c791fe4dd36a6dede21315275c6","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba","requestID":"33224c791fe4dd36a6dede21315275c6"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.171286,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:23Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"33224c791fe4dd36a6dede21315275c6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615923,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyM30.MMhRSGZoZMHR8rD29DGPApPr_zAamWWwiQuxNo04azw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"33224c791fe4dd36a6dede21315275c6","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba"},"level":"info","message":"Attempting to finish experiment","requestID":"33224c791fe4dd36a6dede21315275c6"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"d1cfd510-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.371769,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:23Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a0c4c2df-78fd-44cd-a3ce-81605655af32","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d1cfd510-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/a0c4c2df-78fd-44cd-a3ce-81605655af32","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615923,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyM30.MMhRSGZoZMHR8rD29DGPApPr_zAamWWwiQuxNo04azw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d1cfd510-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"a68e95c6-ed7a-44c2-a545-cf01158b2bb0","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a68e95c6-ed7a-44c2-a545-cf01158b2bb0","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a68e95c6-ed7a-44c2-a545-cf01158b2bb0","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a220d540-4b70-43a1-b782-f6d7a275e771","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a220d540-4b70-43a1-b782-f6d7a275e771","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a220d540-4b70-43a1-b782-f6d7a275e771","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a0c4c2df-78fd-44cd-a3ce-81605655af32' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/a0c4c2df-78fd-44cd-a3ce-81605655af32' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a0c4c2df-78fd-44cd-a3ce-81605655af32","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa0c4c2df-78fd-44cd-a3ce-81605655af32': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa0c4c2df-78fd-44cd-a3ce-81605655af32","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"84d9ecc1-f249-436c-9583-972057c92346","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615923.960965} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3f89516f-3f04-4249-b89f-94e2de2e8286","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615923.9613364} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"d1cfd510-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e6688954515e3a024196f720b82c7910","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":"e6688954515e3a024196f720b82c7910","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5ce912436b44b7274002fa1867bb8540","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":"5ce912436b44b7274002fa1867bb8540","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a0c4c2df-78fd-44cd-a3ce-81605655af32"}}},"level":"info","message":"received a callback","requestID":"e6688954515e3a024196f720b82c7910"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a0c4c2df-78fd-44cd-a3ce-81605655af32"}}},"level":"info","message":"received a callback","requestID":"5ce912436b44b7274002fa1867bb8540"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"d1cfd510-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/a0c4c2df-78fd-44cd-a3ce-81605655af32 204 36ms","method":"DELETE","requestID":"d1cfd510-50eb-11ef-8434-2f6d198c7397","responseTime":36,"status":204,"url":"/peerconnections/a0c4c2df-78fd-44cd-a3ce-81605655af32"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba"},"level":"info","message":"Successfully finished experiment","requestID":"33224c791fe4dd36a6dede21315275c6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d1d8aeb0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:23Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa68e95c6-ed7a-44c2-a545-cf01158b2bb0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"770543fb-3cbe-45e0-83e7-08b2976a28b1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615923.9994025} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.732148,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d1d8aeb0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0","object_type":"device","rebac_allow":false,"scope_allow":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":"d1d8aeb0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d1d8aeb0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0/signaling 200 9ms","method":"POST","requestID":"d1d8aeb0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/a68e95c6-ed7a-44c2-a545-cf01158b2bb0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d1da5c60-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9f5e70f6-9157-4938-a875-6ea4d61252ba': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9f5e70f6-9157-4938-a875-6ea4d61252ba","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"61250218-6cc7-42dd-ac1e-30801d4567ca","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615924.0070512} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b4686109-f5b9-4138-beb7-82fe5571dae0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615924.0073457} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"33224c791fe4dd36a6dede21315275c6","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:24Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa220d540-4b70-43a1-b782-f6d7a275e771","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0e2514c2-c2c2-462e-b23e-de3ce63d5da1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615924.0124013} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.62201,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d1da5c60-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a220d540-4b70-43a1-b782-f6d7a275e771","object_type":"device","rebac_allow":false,"scope_allow":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":"d1da5c60-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d1da5c60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/a220d540-4b70-43a1-b782-f6d7a275e771/signaling 200 10ms","method":"POST","requestID":"d1da5c60-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/a220d540-4b70-43a1-b782-f6d7a275e771/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba","requestID":"33224c791fe4dd36a6dede21315275c6"} gateway-1 | {"time_local":"02/Aug/2024:16:25:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.155","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"33224c791fe4dd36a6dede21315275c6"} experiment-1 | {"level":"info","message":"DELETE /experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba 204 149ms","method":"DELETE","requestID":"33224c791fe4dd36a6dede21315275c6","responseTime":149,"status":204,"url":"/experiments/9f5e70f6-9157-4938-a875-6ea4d61252ba"} gateway-1 | {"time_local":"02/Aug/2024:16:25:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2462","request_time":"2.797","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"e32cc0843f13e408d962ebf4cc58596d"} gateway-1 | {"time_local":"02/Aug/2024:16:25:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2462","request_time":"2.786","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"f7479e31cc5ca628b348690bb6e0e1f2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 108ms","method":"POST","requestID":"e6688954515e3a024196f720b82c7910","responseTime":108,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:24 +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.112","http_referrer":"","http_user_agent":"node-fetch","requestID":"e6688954515e3a024196f720b82c7910"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 107ms","method":"POST","requestID":"5ce912436b44b7274002fa1867bb8540","responseTime":107,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:24 +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.111","http_referrer":"","http_user_agent":"node-fetch","requestID":"5ce912436b44b7274002fa1867bb8540"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNH0.JOSgmAD9nKgjZB9T7vILSBl8gUtNRvughmkbYtxdQQ0","level":"info","message":"auth send jwt","requestID":"c8d8912202fb26c39d960f97eba3d6ba"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c8d8912202fb26c39d960f97eba3d6ba","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/a220d540-4b70-43a1-b782-f6d7a275e771' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"c8d8912202fb26c39d960f97eba3d6ba"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.809708,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c8d8912202fb26c39d960f97eba3d6ba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615924,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNH0.JOSgmAD9nKgjZB9T7vILSBl8gUtNRvughmkbYtxdQQ0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c8d8912202fb26c39d960f97eba3d6ba","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/a68e95c6-ed7a-44c2-a545-cf01158b2bb0' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47248fef-6c93-42e3-bd5e-effb74fd08cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"13182589-4927-46fe-a53a-77b162989e2e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615924.1054637} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c8d8912202fb26c39d960f97eba3d6ba","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fa320140-e60a-49f2-98d4-b0596ca225af","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615924.1116893} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c8d8912202fb26c39d960f97eba3d6ba","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47248fef-6c93-42e3-bd5e-effb74fd08cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"d7c9a1e7-69fa-4ebd-9b20-02bb22e7ef0d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615924.122599} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3d3c3c6e-91a6-4b31-a912-279cba832d25","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615924.1228638} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"c8d8912202fb26c39d960f97eba3d6ba","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47248fef-6c93-42e3-bd5e-effb74fd08cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47248fef-6c93-42e3-bd5e-effb74fd08cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:24.122571085Z"}]},"request_id":"a7fa9c12-1b75-48a7-9284-b16ec59205b6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615924.1272461} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c8d8912202fb26c39d960f97eba3d6ba","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c8d8912202fb26c39d960f97eba3d6ba"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"c8d8912202fb26c39d960f97eba3d6ba","responseTime":50,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c8d8912202fb26c39d960f97eba3d6ba"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNH0.JOSgmAD9nKgjZB9T7vILSBl8gUtNRvughmkbYtxdQQ0","level":"info","message":"auth send jwt","requestID":"1fd6701deda02c89fa6233f8da07b327"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1fd6701deda02c89fa6233f8da07b327","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1fd6701deda02c89fa6233f8da07b327"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.713944,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1fd6701deda02c89fa6233f8da07b327","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615924,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNH0.JOSgmAD9nKgjZB9T7vILSBl8gUtNRvughmkbYtxdQQ0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1fd6701deda02c89fa6233f8da07b327","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97840190-5e3f-4f47-9ea8-b65a3281a658","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"51f49426-f320-4e39-ac9e-a34bc58af832","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615924.1553097} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1fd6701deda02c89fa6233f8da07b327","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6d1eb779-328d-4bbb-aab6-d1ad73fe7eaf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615924.160632} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1fd6701deda02c89fa6233f8da07b327","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97840190-5e3f-4f47-9ea8-b65a3281a658","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"772b4246-0991-4f92-9cb0-d4b51297746b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615924.1767642} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"80585d49-d882-4160-bf7f-94bcc0030076","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615924.1769986} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"1fd6701deda02c89fa6233f8da07b327","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97840190-5e3f-4f47-9ea8-b65a3281a658","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97840190-5e3f-4f47-9ea8-b65a3281a658","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:24.176732381Z"}]},"request_id":"d9daf30c-f8a2-48b6-9faa-7a12f972598d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615924.1820521} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1fd6701deda02c89fa6233f8da07b327","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1fd6701deda02c89fa6233f8da07b327"} gateway-1 | {"time_local":"02/Aug/2024:16:25:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1fd6701deda02c89fa6233f8da07b327"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"1fd6701deda02c89fa6233f8da07b327","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b7759edb3a375ffb34cc7445543d1bbd","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":"b7759edb3a375ffb34cc7445543d1bbd","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/97840190-5e3f-4f47-9ea8-b65a3281a658/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":"b7759edb3a375ffb34cc7445543d1bbd"} device-1 | {"level":"info","message":"OPTIONS /devices/97840190-5e3f-4f47-9ea8-b65a3281a658/websocket 200 1ms","method":"OPTIONS","requestID":"b7759edb3a375ffb34cc7445543d1bbd","responseTime":1,"status":200,"url":"/devices/97840190-5e3f-4f47-9ea8-b65a3281a658/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI","level":"info","message":"auth send jwt","requestID":"84b4a1a9864866a06f2a5bff71221a78"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"84b4a1a9864866a06f2a5bff71221a78","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"84b4a1a9864866a06f2a5bff71221a78"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.671165,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"84b4a1a9864866a06f2a5bff71221a78","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615926,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"84b4a1a9864866a06f2a5bff71221a78","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f1fb9cf0e742cb362fae53bef15d2a17","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":"f1fb9cf0e742cb362fae53bef15d2a17","responseTime":0,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/47248fef-6c93-42e3-bd5e-effb74fd08cf/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":"f1fb9cf0e742cb362fae53bef15d2a17"} device-1 | {"level":"info","message":"OPTIONS /devices/47248fef-6c93-42e3-bd5e-effb74fd08cf/websocket 200 1ms","method":"OPTIONS","requestID":"f1fb9cf0e742cb362fae53bef15d2a17","responseTime":1,"status":200,"url":"/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI","level":"info","message":"auth send jwt","requestID":"b83d1d85008bf7398d5578dafeee25a1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b83d1d85008bf7398d5578dafeee25a1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b83d1d85008bf7398d5578dafeee25a1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"84b4a1a9864866a06f2a5bff71221a78"} gateway-1 | {"time_local":"02/Aug/2024:16:25:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/97840190-5e3f-4f47-9ea8-b65a3281a658/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":"84b4a1a9864866a06f2a5bff71221a78"} device-1 | {"level":"info","message":"POST /devices/97840190-5e3f-4f47-9ea8-b65a3281a658/websocket 200 22ms","method":"POST","requestID":"84b4a1a9864866a06f2a5bff71221a78","responseTime":22,"status":200,"url":"/devices/97840190-5e3f-4f47-9ea8-b65a3281a658/websocket"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.978014,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b83d1d85008bf7398d5578dafeee25a1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615926,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b83d1d85008bf7398d5578dafeee25a1","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b83d1d85008bf7398d5578dafeee25a1"} gateway-1 | {"time_local":"02/Aug/2024:16:25:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/47248fef-6c93-42e3-bd5e-effb74fd08cf/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":"b83d1d85008bf7398d5578dafeee25a1"} device-1 | {"level":"info","message":"POST /devices/47248fef-6c93-42e3-bd5e-effb74fd08cf/websocket 200 19ms","method":"POST","requestID":"b83d1d85008bf7398d5578dafeee25a1","responseTime":19,"status":200,"url":"/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ec9e8d20b6ff3423cacf57065e525c1a","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":"ec9e8d20b6ff3423cacf57065e525c1a","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/97840190-5e3f-4f47-9ea8-b65a3281a658? 200 1ms","method":"OPTIONS","requestID":"ec9e8d20b6ff3423cacf57065e525c1a","responseTime":1,"status":200,"url":"/devices/97840190-5e3f-4f47-9ea8-b65a3281a658?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/97840190-5e3f-4f47-9ea8-b65a3281a658? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"ec9e8d20b6ff3423cacf57065e525c1a"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"782fd8af91568217e36db3d8a3451ce5","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":"782fd8af91568217e36db3d8a3451ce5","responseTime":0,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/47248fef-6c93-42e3-bd5e-effb74fd08cf? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.002","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":"782fd8af91568217e36db3d8a3451ce5"} device-1 | {"level":"info","message":"OPTIONS /devices/47248fef-6c93-42e3-bd5e-effb74fd08cf? 200 1ms","method":"OPTIONS","requestID":"782fd8af91568217e36db3d8a3451ce5","responseTime":1,"status":200,"url":"/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI","level":"info","message":"auth send jwt","requestID":"4ee9084b8c53a3c8440ac8022318c455"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4ee9084b8c53a3c8440ac8022318c455","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4ee9084b8c53a3c8440ac8022318c455"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.910147,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI","level":"info","message":"auth send jwt","requestID":"e8dc550daa3e5801f0f004ad55221f61"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"4ee9084b8c53a3c8440ac8022318c455","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615926,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e8dc550daa3e5801f0f004ad55221f61","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4ee9084b8c53a3c8440ac8022318c455","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e8dc550daa3e5801f0f004ad55221f61"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.895878,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e8dc550daa3e5801f0f004ad55221f61","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615926,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e8dc550daa3e5801f0f004ad55221f61","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97840190-5e3f-4f47-9ea8-b65a3281a658","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97840190-5e3f-4f47-9ea8-b65a3281a658","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:24.176732381Z"}]},"request_id":"53b39a5a-93b3-483c-a12e-70477ab6e306","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.201662} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4ee9084b8c53a3c8440ac8022318c455","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47248fef-6c93-42e3-bd5e-effb74fd08cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47248fef-6c93-42e3-bd5e-effb74fd08cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:24.122571085Z"}]},"request_id":"a599c993-b3a8-4e4d-a4d0-bfa1d144a6ea","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.204831} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e8dc550daa3e5801f0f004ad55221f61","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ce5f9e38-fdd4-4348-9b1c-eb54d29d4685","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.2070544} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4ee9084b8c53a3c8440ac8022318c455","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8a5857aa-2b57-49e0-9cd0-2a75372adedd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.2124357} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e8dc550daa3e5801f0f004ad55221f61","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97840190-5e3f-4f47-9ea8-b65a3281a658","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97840190-5e3f-4f47-9ea8-b65a3281a658","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:24.176732381Z"}]},"request_id":"e3c39781-30b9-41e2-9f03-3598d0175244","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.2218542} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4ee9084b8c53a3c8440ac8022318c455","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4ee9084b8c53a3c8440ac8022318c455"} gateway-1 | {"time_local":"02/Aug/2024:16:25:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/97840190-5e3f-4f47-9ea8-b65a3281a658? HTTP/1.1","status": "200","body_bytes_sent":"1007","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":"4ee9084b8c53a3c8440ac8022318c455"} device-1 | {"level":"info","message":"PATCH /devices/97840190-5e3f-4f47-9ea8-b65a3281a658? 200 35ms","method":"PATCH","requestID":"4ee9084b8c53a3c8440ac8022318c455","responseTime":35,"status":200,"url":"/devices/97840190-5e3f-4f47-9ea8-b65a3281a658?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47248fef-6c93-42e3-bd5e-effb74fd08cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47248fef-6c93-42e3-bd5e-effb74fd08cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:24.122571085Z"}]},"request_id":"aa485564-7754-454b-a8a6-82687493671c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.2338376} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e8dc550daa3e5801f0f004ad55221f61","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e8dc550daa3e5801f0f004ad55221f61"} device-1 | {"level":"info","message":"PATCH /devices/47248fef-6c93-42e3-bd5e-effb74fd08cf? 200 43ms","method":"PATCH","requestID":"e8dc550daa3e5801f0f004ad55221f61","responseTime":43,"status":200,"url":"/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/47248fef-6c93-42e3-bd5e-effb74fd08cf? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.047","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":"e8dc550daa3e5801f0f004ad55221f61"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI","level":"info","message":"auth send jwt","requestID":"131766fed108c0283ea194616ff8794d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"131766fed108c0283ea194616ff8794d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"131766fed108c0283ea194616ff8794d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.183352,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"131766fed108c0283ea194616ff8794d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615926,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"131766fed108c0283ea194616ff8794d","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47248fef-6c93-42e3-bd5e-effb74fd08cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47248fef-6c93-42e3-bd5e-effb74fd08cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:24.122571085Z"}]},"request_id":"18f16987-49f8-4b87-9bcd-cf4b9469bb22","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.2572975} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"131766fed108c0283ea194616ff8794d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"131766fed108c0283ea194616ff8794d"} gateway-1 | {"time_local":"02/Aug/2024:16:25:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/47248fef-6c93-42e3-bd5e-effb74fd08cf? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"131766fed108c0283ea194616ff8794d"} device-1 | {"level":"info","message":"GET /devices/47248fef-6c93-42e3-bd5e-effb74fd08cf? 200 15ms","method":"GET","requestID":"131766fed108c0283ea194616ff8794d","responseTime":15,"status":200,"url":"/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI","level":"info","message":"auth send jwt","requestID":"ad42c080510f0ff4d14ebc39d4d3b823"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ad42c080510f0ff4d14ebc39d4d3b823","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ad42c080510f0ff4d14ebc39d4d3b823"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.905016,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ad42c080510f0ff4d14ebc39d4d3b823","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615926,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ad42c080510f0ff4d14ebc39d4d3b823","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97840190-5e3f-4f47-9ea8-b65a3281a658","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97840190-5e3f-4f47-9ea8-b65a3281a658","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:24.176732381Z"}]},"request_id":"032916aa-cd05-44ca-8bf1-2cf8154a849b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.2762756} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ad42c080510f0ff4d14ebc39d4d3b823","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ad42c080510f0ff4d14ebc39d4d3b823"} gateway-1 | {"time_local":"02/Aug/2024:16:25:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/97840190-5e3f-4f47-9ea8-b65a3281a658? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ad42c080510f0ff4d14ebc39d4d3b823"} device-1 | {"level":"info","message":"GET /devices/97840190-5e3f-4f47-9ea8-b65a3281a658? 200 14ms","method":"GET","requestID":"ad42c080510f0ff4d14ebc39d4d3b823","responseTime":14,"status":200,"url":"/devices/97840190-5e3f-4f47-9ea8-b65a3281a658?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI","level":"info","message":"auth send jwt","requestID":"97b78aa059d60c77214c10cfb694dd73"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"97b78aa059d60c77214c10cfb694dd73","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"97b78aa059d60c77214c10cfb694dd73"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.68136,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"97b78aa059d60c77214c10cfb694dd73","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615926,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"97b78aa059d60c77214c10cfb694dd73","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757"},"level":"info","message":"Attempting to run experiment","requestID":"97b78aa059d60c77214c10cfb694dd73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757"},"level":"info","message":"Attempting to book experiment","requestID":"97b78aa059d60c77214c10cfb694dd73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757"},"level":"info","message":"Successfully booked experiment","requestID":"97b78aa059d60c77214c10cfb694dd73"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d33bc120-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d33c3650-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.90099,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d33bc120-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615926,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d33bc120-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.065294,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d33c3650-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615926,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d33c3650-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47248fef-6c93-42e3-bd5e-effb74fd08cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47248fef-6c93-42e3-bd5e-effb74fd08cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:24.122571085Z"}]},"request_id":"325bf2c2-7526-4a5c-b609-291302794d86","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.3325105} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d33bc120-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97840190-5e3f-4f47-9ea8-b65a3281a658","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97840190-5e3f-4f47-9ea8-b65a3281a658","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:24.176732381Z"}]},"request_id":"cd42ce86-8b31-4ac5-b745-e0b05fbc71f1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.3379946} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d33bc120-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d33c3650-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/47248fef-6c93-42e3-bd5e-effb74fd08cf? 200 17ms","method":"GET","requestID":"d33bc120-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d33c3650-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/97840190-5e3f-4f47-9ea8-b65a3281a658? 200 19ms","method":"GET","requestID":"d33c3650-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/97840190-5e3f-4f47-9ea8-b65a3281a658?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757"},"level":"info","message":"Setting up experiment","requestID":"97b78aa059d60c77214c10cfb694dd73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"97b78aa059d60c77214c10cfb694dd73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757"},"level":"info","message":"Successfully locked booking for experiment","requestID":"97b78aa059d60c77214c10cfb694dd73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"97b78aa059d60c77214c10cfb694dd73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"97b78aa059d60c77214c10cfb694dd73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757"},"level":"info","message":"Attempting to update booking for experiment","requestID":"97b78aa059d60c77214c10cfb694dd73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757"},"level":"info","message":"Successfully updated booking for experiment","requestID":"97b78aa059d60c77214c10cfb694dd73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757"},"level":"info","message":"Successfully set up experiment","requestID":"97b78aa059d60c77214c10cfb694dd73"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d347f620-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d3484440-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d348b970-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757"},"level":"info","message":"Successfully running experiment","requestID":"97b78aa059d60c77214c10cfb694dd73"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.812104,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d347f620-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615926,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d347f620-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.386073,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d3484440-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615926,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"d3484440-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56884","level":"info","msg":"Received request.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47248fef-6c93-42e3-bd5e-effb74fd08cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47248fef-6c93-42e3-bd5e-effb74fd08cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:24.122571085Z"}]},"request_id":"1c696bfb-19d3-45bd-bd89-322ac36b2475","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.4208333} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47248fef-6c93-42e3-bd5e-effb74fd08cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"62f8a716-3ba7-46e0-80b8-4fe73968fd6b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.4215162} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"d347f620-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97840190-5e3f-4f47-9ea8-b65a3281a658","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97840190-5e3f-4f47-9ea8-b65a3281a658","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:24.176732381Z"}]},"request_id":"eb2a6530-cd10-4ff0-80ca-bf889bbb1606","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.4229684} authorization-1 | {"client_addr":"127.0.0.1:56884","level":"info","msg":"Sent response.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.613351,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d348b970-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf","object_type":"device","rebac_allow":false,"scope_allow":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":"d348b970-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"d3484440-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d347f620-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/47248fef-6c93-42e3-bd5e-effb74fd08cf? 200 30ms","method":"GET","requestID":"d347f620-50eb-11ef-8434-2f6d198c7397","responseTime":30,"status":200,"url":"/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf?"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffed1fa3e-56da-4c1e-bce1-c9df17293757#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffed1fa3e-56da-4c1e-bce1-c9df17293757","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"d989920a-d0a0-4304-aa26-b2477bdfc858","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.4335945} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d348b970-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/47248fef-6c93-42e3-bd5e-effb74fd08cf/signaling 200 28ms","method":"POST","requestID":"d348b970-50eb-11ef-8434-2f6d198c7397","responseTime":28,"status":200,"url":"/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf/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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1a9fd09b-20fa-4bff-8491-0806260a45bf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.4343698} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d3484440-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"97b78aa059d60c77214c10cfb694dd73","responseTime":25,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/97840190-5e3f-4f47-9ea8-b65a3281a658? 200 34ms","method":"GET","requestID":"d3484440-50eb-11ef-8434-2f6d198c7397","responseTime":34,"status":200,"url":"/devices/97840190-5e3f-4f47-9ea8-b65a3281a658?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d34d9b70-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97840190-5e3f-4f47-9ea8-b65a3281a658","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cc78afec-f0e9-4fdc-b6a3-45b084684356","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.447291} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.689276,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d34f2210-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d34d9b70-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658","object_type":"device","rebac_allow":false,"scope_allow":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":"d34d9b70-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"97b78aa059d60c77214c10cfb694dd73"} gateway-1 | {"time_local":"02/Aug/2024:16:25:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"778","request_time":"0.175","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"97b78aa059d60c77214c10cfb694dd73"} experiment-1 | {"level":"info","message":"POST /experiments? 201 170ms","method":"POST","requestID":"97b78aa059d60c77214c10cfb694dd73","responseTime":170,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d34d9b70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/97840190-5e3f-4f47-9ea8-b65a3281a658/signaling 200 20ms","method":"POST","requestID":"d34d9b70-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/97840190-5e3f-4f47-9ea8-b65a3281a658/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47248fef-6c93-42e3-bd5e-effb74fd08cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"191c681a-83a9-4225-ba5b-3c13ead12abe","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.4595125} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.550214,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d34f2210-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf","object_type":"device","rebac_allow":false,"scope_allow":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":"d34f2210-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI","level":"info","message":"auth send jwt","requestID":"6f36464b0b155ca025f5e4689d070c7d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6f36464b0b155ca025f5e4689d070c7d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6f36464b0b155ca025f5e4689d070c7d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d34f2210-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/47248fef-6c93-42e3-bd5e-effb74fd08cf/signaling 200 19ms","method":"POST","requestID":"d34f2210-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.375086,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"6f36464b0b155ca025f5e4689d070c7d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615926,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6f36464b0b155ca025f5e4689d070c7d","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d3525660-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47248fef-6c93-42e3-bd5e-effb74fd08cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47248fef-6c93-42e3-bd5e-effb74fd08cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:24.122571085Z"}]},"request_id":"8f519cb0-c022-4fbd-b2e7-44e072d5faff","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.4759152} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6f36464b0b155ca025f5e4689d070c7d","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97840190-5e3f-4f47-9ea8-b65a3281a658","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ceee36e9-aa56-4946-b46b-f07317fdc7d9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.4761875} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.185281,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d3525660-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658","object_type":"device","rebac_allow":false,"scope_allow":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":"d3525660-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6f36464b0b155ca025f5e4689d070c7d"} gateway-1 | {"time_local":"02/Aug/2024:16:25:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/47248fef-6c93-42e3-bd5e-effb74fd08cf? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6f36464b0b155ca025f5e4689d070c7d"} device-1 | {"level":"info","message":"GET /devices/47248fef-6c93-42e3-bd5e-effb74fd08cf? 200 18ms","method":"GET","requestID":"6f36464b0b155ca025f5e4689d070c7d","responseTime":18,"status":200,"url":"/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d3525660-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/97840190-5e3f-4f47-9ea8-b65a3281a658/signaling 200 13ms","method":"POST","requestID":"d3525660-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/97840190-5e3f-4f47-9ea8-b65a3281a658/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"97b78aa059d60c77214c10cfb694dd73"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d354a050-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI","level":"info","message":"auth send jwt","requestID":"b01da2853c393b25d87de70fc3d98f76"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b01da2853c393b25d87de70fc3d98f76","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d354ee70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b01da2853c393b25d87de70fc3d98f76"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.612036,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d354a050-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615926,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d354a050-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.813342,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"client_addr":"127.0.0.1:56884","level":"info","msg":"Received request.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d354ee70-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615926,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d354ee70-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56884","level":"info","msg":"Sent response.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.825946,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b01da2853c393b25d87de70fc3d98f76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615926,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b01da2853c393b25d87de70fc3d98f76","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47248fef-6c93-42e3-bd5e-effb74fd08cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47248fef-6c93-42e3-bd5e-effb74fd08cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:24.122571085Z"}]},"request_id":"4de78167-f60a-4271-b3d5-056a02e7726e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.4969544} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"d354a050-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97840190-5e3f-4f47-9ea8-b65a3281a658","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97840190-5e3f-4f47-9ea8-b65a3281a658","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:24.176732381Z"}]},"request_id":"0564d2ae-c7f0-4b13-9efa-c01db3ba97f2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.50016} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d354a050-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d354ee70-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97840190-5e3f-4f47-9ea8-b65a3281a658","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97840190-5e3f-4f47-9ea8-b65a3281a658","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:24.176732381Z"}]},"request_id":"9e7d260d-a1fd-41b8-9358-3fc52e00b341","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.5028143} device-1 | {"level":"info","message":"GET /devices/47248fef-6c93-42e3-bd5e-effb74fd08cf? 200 19ms","method":"GET","requestID":"d354a050-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b01da2853c393b25d87de70fc3d98f76","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d354ee70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/97840190-5e3f-4f47-9ea8-b65a3281a658? 200 21ms","method":"GET","requestID":"d354ee70-50eb-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/devices/97840190-5e3f-4f47-9ea8-b65a3281a658?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b01da2853c393b25d87de70fc3d98f76"} gateway-1 | {"time_local":"02/Aug/2024:16:25:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/97840190-5e3f-4f47-9ea8-b65a3281a658? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b01da2853c393b25d87de70fc3d98f76"} device-1 | {"level":"info","message":"GET /devices/97840190-5e3f-4f47-9ea8-b65a3281a658? 200 19ms","method":"GET","requestID":"b01da2853c393b25d87de70fc3d98f76","responseTime":19,"status":200,"url":"/devices/97840190-5e3f-4f47-9ea8-b65a3281a658?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757"},"level":"info","message":"Building connection plan","requestID":"97b78aa059d60c77214c10cfb694dd73"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"d238bd34-f620-4e06-af76-4d2d40e1baed"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"22805e79-c8c0-4280-8cc0-77970d2c5fba"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"47efae3a-e5a1-4a44-9305-922fea0167a3"}]},"level":"info","message":"Built pairwise service configurations","requestID":"97b78aa059d60c77214c10cfb694dd73"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"d35897f0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"d35897f0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"d35897f0-50eb-11ef-a432-47ab85bb6d58","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c?id=72ddc439-885b-45af-a08e-ff70ab49bc37","ws://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c?id=2f0248a3-1232-4af7-a63a-bd27f1278c9f"]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"97b78aa059d60c77214c10cfb694dd73"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"d3590d20-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.731854,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d3590d20-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615926,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyNn0.tv9IZKZWCkhmTjrd2Hkc-NNRzCk1o-ZdM63Yxw-BpTI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d3590d20-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"bbf06a74-bb14-43c6-838b-c335ac26e73f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.528434} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"433c7fdc-3f0b-4dfc-8ab6-3d9c322929e8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.5286164} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"d3590d20-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"d3590d20-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"d3590d20-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/66dbb123-61f0-4b9d-a56c-ae897df35efa'","requestID":"d3590d20-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/66dbb123-61f0-4b9d-a56c-ae897df35efa'","requestID":"d3590d20-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"d3590d20-50eb-11ef-8434-2f6d198c7397"} 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":"d3590d20-50eb-11ef-8434-2f6d198c7397","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":"d3590d20-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/66dbb123-61f0-4b9d-a56c-ae897df35efa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"66dbb123-61f0-4b9d-a56c-ae897df35efa","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"d35f75c0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\"","requestID":"d35f75c0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"d35f75c0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"d35fc3e0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"72ddc439-885b-45af-a08e-ff70ab49bc37\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\"","requestID":"d35fc3e0-50eb-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c0792c41b54e9bb36e589742f17420c4","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)"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"d35fc3e0-50eb-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c0792c41b54e9bb36e589742f17420c4","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/66dbb123-61f0-4b9d-a56c-ae897df35efa"}}},"level":"info","message":"received a callback","requestID":"c0792c41b54e9bb36e589742f17420c4"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} device-1 | {"data":{"peerconnection":"66dbb123-61f0-4b9d-a56c-ae897df35efa","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"c0792c41b54e9bb36e589742f17420c4","responseTime":9,"status":200,"url":"/callbacks/experiment"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} gateway-1 | {"time_local":"02/Aug/2024:16:25: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.015","http_referrer":"","http_user_agent":"node-fetch","requestID":"c0792c41b54e9bb36e589742f17420c4"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} device-1 | {"data":{"peerconnection":"66dbb123-61f0-4b9d-a56c-ae897df35efa","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"97b78aa059d60c77214c10cfb694dd73"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d3656930-50eb-11ef-8434-2f6d198c7397"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/66dbb123-61f0-4b9d-a56c-ae897df35efa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"66dbb123-61f0-4b9d-a56c-ae897df35efa","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4434b11817d1f6edb5a20690563b620b","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":"4434b11817d1f6edb5a20690563b620b","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47248fef-6c93-42e3-bd5e-effb74fd08cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3704578e-0a49-4711-a5c3-4ccf862545d1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.601293} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/66dbb123-61f0-4b9d-a56c-ae897df35efa"}}},"level":"info","message":"received a callback","requestID":"4434b11817d1f6edb5a20690563b620b"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.86453,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d3656930-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf","object_type":"device","rebac_allow":false,"scope_allow":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":"d3656930-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"d3676500-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F66dbb123-61f0-4b9d-a56c-ae897df35efa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"83504ec8-5009-4ee2-80e7-567634808d8b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.612888} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.923425,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/66dbb123-61f0-4b9d-a56c-ae897df35efa","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d3676500-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/66dbb123-61f0-4b9d-a56c-ae897df35efa","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":"d3676500-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d3656930-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/47248fef-6c93-42e3-bd5e-effb74fd08cf/signaling 200 22ms","method":"POST","requestID":"d3656930-50eb-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf/signaling"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"d3676500-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/66dbb123-61f0-4b9d-a56c-ae897df35efa 200 10ms","method":"GET","requestID":"d3676500-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/peerconnections/66dbb123-61f0-4b9d-a56c-ae897df35efa"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d36939c0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97840190-5e3f-4f47-9ea8-b65a3281a658","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"49641a71-dd42-4029-b6ce-5684536c1a88","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.6250274} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.607859,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d36939c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658","object_type":"device","rebac_allow":false,"scope_allow":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":"d36939c0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d36939c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/97840190-5e3f-4f47-9ea8-b65a3281a658/signaling 200 10ms","method":"POST","requestID":"d36939c0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/97840190-5e3f-4f47-9ea8-b65a3281a658/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 33ms","method":"POST","requestID":"4434b11817d1f6edb5a20690563b620b","responseTime":33,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25: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.037","http_referrer":"","http_user_agent":"node-fetch","requestID":"4434b11817d1f6edb5a20690563b620b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d36baac0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47248fef-6c93-42e3-bd5e-effb74fd08cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3a798b98-28d0-4947-a2bc-730977708f29","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.64142} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.571271,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d36baac0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf","object_type":"device","rebac_allow":false,"scope_allow":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":"d36baac0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d36baac0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/47248fef-6c93-42e3-bd5e-effb74fd08cf/signaling 200 10ms","method":"POST","requestID":"d36baac0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d36d7f80-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97840190-5e3f-4f47-9ea8-b65a3281a658","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"57a7353a-dcf9-4bbf-b651-a8564d1e0f90","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615926.6531591} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.540786,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d36d7f80-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658","object_type":"device","rebac_allow":false,"scope_allow":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":"d36d7f80-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d36d7f80-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/97840190-5e3f-4f47-9ea8-b65a3281a658/signaling 200 10ms","method":"POST","requestID":"d36d7f80-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/97840190-5e3f-4f47-9ea8-b65a3281a658/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyN30.mak8_6J4zo4R0iPWiqXLe-Y4WTkPcjDmUVdKNYJ9u2s","level":"info","message":"auth send jwt","requestID":"b19866af59ecec7c5f629b9274cc1a38"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"b19866af59ecec7c5f629b9274cc1a38","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757","requestID":"b19866af59ecec7c5f629b9274cc1a38"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.402195,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b19866af59ecec7c5f629b9274cc1a38","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615927,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyN30.mak8_6J4zo4R0iPWiqXLe-Y4WTkPcjDmUVdKNYJ9u2s"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b19866af59ecec7c5f629b9274cc1a38","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757","requestID":"b19866af59ecec7c5f629b9274cc1a38"} gateway-1 | {"time_local":"02/Aug/2024:16:25:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757 HTTP/1.1","status": "200","body_bytes_sent":"851","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b19866af59ecec7c5f629b9274cc1a38"} experiment-1 | {"level":"info","message":"GET /experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757 200 17ms","method":"GET","requestID":"b19866af59ecec7c5f629b9274cc1a38","responseTime":17,"status":200,"url":"/experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyN30.mak8_6J4zo4R0iPWiqXLe-Y4WTkPcjDmUVdKNYJ9u2s","level":"info","message":"auth send jwt","requestID":"429ded25c7b9194ed1dea1868bb86271"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"429ded25c7b9194ed1dea1868bb86271","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757","requestID":"429ded25c7b9194ed1dea1868bb86271"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.218489,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:27Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"429ded25c7b9194ed1dea1868bb86271","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615927,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyN30.mak8_6J4zo4R0iPWiqXLe-Y4WTkPcjDmUVdKNYJ9u2s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"429ded25c7b9194ed1dea1868bb86271","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757"},"level":"info","message":"Attempting to finish experiment","requestID":"429ded25c7b9194ed1dea1868bb86271"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"d3acf980-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.243599,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:27Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/66dbb123-61f0-4b9d-a56c-ae897df35efa","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d3acf980-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/66dbb123-61f0-4b9d-a56c-ae897df35efa","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615927,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyN30.mak8_6J4zo4R0iPWiqXLe-Y4WTkPcjDmUVdKNYJ9u2s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d3acf980-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:25:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c?id=72ddc439-885b-45af-a08e-ff70ab49bc37 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.528","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":"aba29fe1866d0b5bb62cd17ee44318f9"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/66dbb123-61f0-4b9d-a56c-ae897df35efa","device":"47248fef-6c93-42e3-bd5e-effb74fd08cf","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"02/Aug/2024:16:25:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c?id=2f0248a3-1232-4af7-a63a-bd27f1278c9f HTTP/1.1","status": "101","body_bytes_sent":"940749","request_time":"0.529","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":"889d37089162bf18a430cb14d1f58e90"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"72ddc439-885b-45af-a08e-ff70ab49bc37\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/66dbb123-61f0-4b9d-a56c-ae897df35efa","device":"97840190-5e3f-4f47-9ea8-b65a3281a658","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"72ddc439-885b-45af-a08e-ff70ab49bc37\" from room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" in room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"2f0248a3-1232-4af7-a63a-bd27f1278c9f\" from room \"http://localhost/rooms/5db94fe0-2398-4f15-a0eb-209c4194da1c\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/66dbb123-61f0-4b9d-a56c-ae897df35efa' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/66dbb123-61f0-4b9d-a56c-ae897df35efa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"66dbb123-61f0-4b9d-a56c-ae897df35efa","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F66dbb123-61f0-4b9d-a56c-ae897df35efa': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F66dbb123-61f0-4b9d-a56c-ae897df35efa","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"736bcf48-0994-4fce-9738-04a38e0c63ba","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615927.087749} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6d42c97f-72aa-496c-8633-07d34fe37549","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615927.087978} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"d3acf980-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cf13a1ca90d0f65fa9f3ea4c2fa90a2f","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":"cf13a1ca90d0f65fa9f3ea4c2fa90a2f","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5ec6a0eeed48ed62994780da7ff7b3d9","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":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/66dbb123-61f0-4b9d-a56c-ae897df35efa"}}},"level":"info","message":"received a callback","requestID":"cf13a1ca90d0f65fa9f3ea4c2fa90a2f"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5ec6a0eeed48ed62994780da7ff7b3d9","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/66dbb123-61f0-4b9d-a56c-ae897df35efa"}}},"level":"info","message":"received a callback","requestID":"5ec6a0eeed48ed62994780da7ff7b3d9"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"d3acf980-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/66dbb123-61f0-4b9d-a56c-ae897df35efa 204 37ms","method":"DELETE","requestID":"d3acf980-50eb-11ef-8434-2f6d198c7397","responseTime":37,"status":204,"url":"/peerconnections/66dbb123-61f0-4b9d-a56c-ae897df35efa"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757"},"level":"info","message":"Successfully finished experiment","requestID":"429ded25c7b9194ed1dea1868bb86271"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d3b4e8c0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:27Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47248fef-6c93-42e3-bd5e-effb74fd08cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8cfcb14b-abfe-4b9e-a5a8-e39c8d76b228","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615927.1207592} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.188683,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d3b4e8c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf","object_type":"device","rebac_allow":false,"scope_allow":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":"d3b4e8c0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d3b4e8c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/47248fef-6c93-42e3-bd5e-effb74fd08cf/signaling 200 8ms","method":"POST","requestID":"d3b4e8c0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/47248fef-6c93-42e3-bd5e-effb74fd08cf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d3b66f60-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffed1fa3e-56da-4c1e-bce1-c9df17293757': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffed1fa3e-56da-4c1e-bce1-c9df17293757","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"cd34b454-2378-4d90-ac91-b28649eaa157","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615927.1276262} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a7afd8cd-ec1f-4334-b768-b8f9e4cd4e6a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615927.1278608} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"429ded25c7b9194ed1dea1868bb86271","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:27Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97840190-5e3f-4f47-9ea8-b65a3281a658","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fc201931-45e5-4587-a83a-898db74b5715","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615927.1314108} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.137205,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d3b66f60-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658","object_type":"device","rebac_allow":false,"scope_allow":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":"d3b66f60-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d3b66f60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/97840190-5e3f-4f47-9ea8-b65a3281a658/signaling 200 11ms","method":"POST","requestID":"d3b66f60-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/97840190-5e3f-4f47-9ea8-b65a3281a658/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757","requestID":"429ded25c7b9194ed1dea1868bb86271"} gateway-1 | {"time_local":"02/Aug/2024:16:25:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.142","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"429ded25c7b9194ed1dea1868bb86271"} experiment-1 | {"level":"info","message":"DELETE /experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757 204 137ms","method":"DELETE","requestID":"429ded25c7b9194ed1dea1868bb86271","responseTime":137,"status":204,"url":"/experiments/fed1fa3e-56da-4c1e-bce1-c9df17293757"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 98ms","method":"POST","requestID":"cf13a1ca90d0f65fa9f3ea4c2fa90a2f","responseTime":98,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25: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.101","http_referrer":"","http_user_agent":"node-fetch","requestID":"cf13a1ca90d0f65fa9f3ea4c2fa90a2f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 96ms","method":"POST","requestID":"5ec6a0eeed48ed62994780da7ff7b3d9","responseTime":96,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25: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.102","http_referrer":"","http_user_agent":"node-fetch","requestID":"5ec6a0eeed48ed62994780da7ff7b3d9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyN30.mak8_6J4zo4R0iPWiqXLe-Y4WTkPcjDmUVdKNYJ9u2s","level":"info","message":"auth send jwt","requestID":"e2f75b79610ba78a162f2536aafdb9c7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e2f75b79610ba78a162f2536aafdb9c7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e2f75b79610ba78a162f2536aafdb9c7"} gateway-1 | {"time_local":"02/Aug/2024:16:25:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1438","request_time":"1.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":"25c56123593cf83ec65d17e9a8e27f32"} gateway-1 | {"time_local":"02/Aug/2024:16:25:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1437","request_time":"1.054","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":"b0044d2661d9792ae8252fd52676ee0f"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:27Z"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/97840190-5e3f-4f47-9ea8-b65a3281a658' closed"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.86535,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e2f75b79610ba78a162f2536aafdb9c7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615927,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyN30.mak8_6J4zo4R0iPWiqXLe-Y4WTkPcjDmUVdKNYJ9u2s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e2f75b79610ba78a162f2536aafdb9c7","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/47248fef-6c93-42e3-bd5e-effb74fd08cf' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21c0569-45c5-436a-8b90-baf5df406f36","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"33092bf4-60f9-4c6b-b3cc-e6dcd7587afc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615927.229794} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e2f75b79610ba78a162f2536aafdb9c7","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a2cb91b2-8422-4a6a-a387-0e621ba387a3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615927.2342207} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e2f75b79610ba78a162f2536aafdb9c7","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21c0569-45c5-436a-8b90-baf5df406f36","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"927ecc01-936d-43d8-bd5a-f2e425bf1507","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615927.2448514} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c4215e6b-3428-4240-83c0-8cae5efd6b4b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615927.245014} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"e2f75b79610ba78a162f2536aafdb9c7","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21c0569-45c5-436a-8b90-baf5df406f36","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21c0569-45c5-436a-8b90-baf5df406f36","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:27.244831343Z"}]},"request_id":"88f50f6c-cd3c-4583-9740-e156607bbb84","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615927.2484477} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e2f75b79610ba78a162f2536aafdb9c7","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e2f75b79610ba78a162f2536aafdb9c7"} device-1 | {"level":"info","message":"POST /devices? 201 58ms","method":"POST","requestID":"e2f75b79610ba78a162f2536aafdb9c7","responseTime":58,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.064","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e2f75b79610ba78a162f2536aafdb9c7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyN30.mak8_6J4zo4R0iPWiqXLe-Y4WTkPcjDmUVdKNYJ9u2s","level":"info","message":"auth send jwt","requestID":"ee48e5e3e259878d8289a4271d1fd6da"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ee48e5e3e259878d8289a4271d1fd6da","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ee48e5e3e259878d8289a4271d1fd6da"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.777669,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ee48e5e3e259878d8289a4271d1fd6da","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615927,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyN30.mak8_6J4zo4R0iPWiqXLe-Y4WTkPcjDmUVdKNYJ9u2s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ee48e5e3e259878d8289a4271d1fd6da","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"455f0e52-3fea-40b4-8c3b-4e7f0f06d6b0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615927.2715507} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ee48e5e3e259878d8289a4271d1fd6da","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e9a870c3-8e5a-4463-b8e5-2cbe7406a33b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615927.2750568} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ee48e5e3e259878d8289a4271d1fd6da","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"0a46aa33-7794-4ec9-ad00-3e1951cd9569","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615927.2917166} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"12dbea14-c95e-4171-a178-2073f287562f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615927.2918122} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"ee48e5e3e259878d8289a4271d1fd6da","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:27.291697818Z"}]},"request_id":"cd84dcb9-ec2c-4c64-b4d2-ffd3e9840265","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615927.2950275} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ee48e5e3e259878d8289a4271d1fd6da","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ee48e5e3e259878d8289a4271d1fd6da"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"ee48e5e3e259878d8289a4271d1fd6da","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ee48e5e3e259878d8289a4271d1fd6da"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyN30.mak8_6J4zo4R0iPWiqXLe-Y4WTkPcjDmUVdKNYJ9u2s","level":"info","message":"auth send jwt","requestID":"b1267ea9b76dc05b8803537b4d75e546"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b1267ea9b76dc05b8803537b4d75e546","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b1267ea9b76dc05b8803537b4d75e546"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.322665,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b1267ea9b76dc05b8803537b4d75e546","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615927,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyN30.mak8_6J4zo4R0iPWiqXLe-Y4WTkPcjDmUVdKNYJ9u2s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b1267ea9b76dc05b8803537b4d75e546","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:27.291697818Z"}]},"request_id":"c3b6b5e3-78eb-455f-9f4d-a95471c0e747","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615927.8194184} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b1267ea9b76dc05b8803537b4d75e546","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b99294d8-5abe-4d56-add7-bcbf56bcf4ca","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615927.8255885} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b1267ea9b76dc05b8803537b4d75e546","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:27.291697818Z"}]},"request_id":"902ee03b-4962-4ded-abe8-db2d2fa9170a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615927.838204} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b1267ea9b76dc05b8803537b4d75e546","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b1267ea9b76dc05b8803537b4d75e546"} device-1 | {"level":"info","message":"PATCH /devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf 200 36ms","method":"PATCH","requestID":"b1267ea9b76dc05b8803537b4d75e546","responseTime":36,"status":200,"url":"/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf"} gateway-1 | {"time_local":"02/Aug/2024:16:25:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"b1267ea9b76dc05b8803537b4d75e546"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyN30.mak8_6J4zo4R0iPWiqXLe-Y4WTkPcjDmUVdKNYJ9u2s","level":"info","message":"auth send jwt","requestID":"7dfd6662e8bc866f0307c26c78a455b1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7dfd6662e8bc866f0307c26c78a455b1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"7dfd6662e8bc866f0307c26c78a455b1"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.183345,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"7dfd6662e8bc866f0307c26c78a455b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615927,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyN30.mak8_6J4zo4R0iPWiqXLe-Y4WTkPcjDmUVdKNYJ9u2s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7dfd6662e8bc866f0307c26c78a455b1","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"7dfd6662e8bc866f0307c26c78a455b1"} gateway-1 | {"time_local":"02/Aug/2024:16:25:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"7dfd6662e8bc866f0307c26c78a455b1"} device-1 | {"level":"info","message":"POST /devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf/websocket 200 20ms","method":"POST","requestID":"7dfd6662e8bc866f0307c26c78a455b1","responseTime":20,"status":200,"url":"/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"103972fb9ee24271e09b5c1604547145","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":"103972fb9ee24271e09b5c1604547145","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e21c0569-45c5-436a-8b90-baf5df406f36/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":"103972fb9ee24271e09b5c1604547145"} device-1 | {"level":"info","message":"OPTIONS /devices/e21c0569-45c5-436a-8b90-baf5df406f36/websocket 200 1ms","method":"OPTIONS","requestID":"103972fb9ee24271e09b5c1604547145","responseTime":1,"status":200,"url":"/devices/e21c0569-45c5-436a-8b90-baf5df406f36/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0","level":"info","message":"auth send jwt","requestID":"872364edfb644321d3f16f2e048f679b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"872364edfb644321d3f16f2e048f679b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"872364edfb644321d3f16f2e048f679b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.238065,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"872364edfb644321d3f16f2e048f679b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615929,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"872364edfb644321d3f16f2e048f679b","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"872364edfb644321d3f16f2e048f679b"} device-1 | {"level":"info","message":"POST /devices/e21c0569-45c5-436a-8b90-baf5df406f36/websocket 200 23ms","method":"POST","requestID":"872364edfb644321d3f16f2e048f679b","responseTime":23,"status":200,"url":"/devices/e21c0569-45c5-436a-8b90-baf5df406f36/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:25:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e21c0569-45c5-436a-8b90-baf5df406f36/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":"872364edfb644321d3f16f2e048f679b"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bad1f29e54785913041720c31eb68647","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":"bad1f29e54785913041720c31eb68647","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e21c0569-45c5-436a-8b90-baf5df406f36? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"bad1f29e54785913041720c31eb68647"} device-1 | {"level":"info","message":"OPTIONS /devices/e21c0569-45c5-436a-8b90-baf5df406f36? 200 1ms","method":"OPTIONS","requestID":"bad1f29e54785913041720c31eb68647","responseTime":1,"status":200,"url":"/devices/e21c0569-45c5-436a-8b90-baf5df406f36?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0","level":"info","message":"auth send jwt","requestID":"3ec1ce09c0bbcebc2ade63a85c0842df"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3ec1ce09c0bbcebc2ade63a85c0842df","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"3ec1ce09c0bbcebc2ade63a85c0842df"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.249907,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"3ec1ce09c0bbcebc2ade63a85c0842df","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615929,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3ec1ce09c0bbcebc2ade63a85c0842df","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21c0569-45c5-436a-8b90-baf5df406f36","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21c0569-45c5-436a-8b90-baf5df406f36","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:27.244831343Z"}]},"request_id":"8bd2f5c3-b634-4a0c-9df1-77225f7215ca","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.3756034} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3ec1ce09c0bbcebc2ade63a85c0842df","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8f6a4c52-a1c5-4b8d-8b66-6be726aa78c0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.3827367} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"3ec1ce09c0bbcebc2ade63a85c0842df","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21c0569-45c5-436a-8b90-baf5df406f36","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21c0569-45c5-436a-8b90-baf5df406f36","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:27.244831343Z"}]},"request_id":"fa588f26-449d-4e45-a2e0-4f7169edbbec","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.3966205} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3ec1ce09c0bbcebc2ade63a85c0842df","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"3ec1ce09c0bbcebc2ade63a85c0842df"} gateway-1 | {"time_local":"02/Aug/2024:16:25:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e21c0569-45c5-436a-8b90-baf5df406f36? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.045","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":"3ec1ce09c0bbcebc2ade63a85c0842df"} device-1 | {"level":"info","message":"PATCH /devices/e21c0569-45c5-436a-8b90-baf5df406f36? 200 38ms","method":"PATCH","requestID":"3ec1ce09c0bbcebc2ade63a85c0842df","responseTime":38,"status":200,"url":"/devices/e21c0569-45c5-436a-8b90-baf5df406f36?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0","level":"info","message":"auth send jwt","requestID":"164d981aefbcfec9dc83234c13583df9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"164d981aefbcfec9dc83234c13583df9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"164d981aefbcfec9dc83234c13583df9"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.388831,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"164d981aefbcfec9dc83234c13583df9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615929,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"164d981aefbcfec9dc83234c13583df9","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21c0569-45c5-436a-8b90-baf5df406f36","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21c0569-45c5-436a-8b90-baf5df406f36","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:27.244831343Z"}]},"request_id":"4c44efb9-aa9f-4a98-9149-f52603898338","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.4259999} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"164d981aefbcfec9dc83234c13583df9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"164d981aefbcfec9dc83234c13583df9"} gateway-1 | {"time_local":"02/Aug/2024:16:25:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e21c0569-45c5-436a-8b90-baf5df406f36? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"164d981aefbcfec9dc83234c13583df9"} device-1 | {"level":"info","message":"GET /devices/e21c0569-45c5-436a-8b90-baf5df406f36? 200 17ms","method":"GET","requestID":"164d981aefbcfec9dc83234c13583df9","responseTime":17,"status":200,"url":"/devices/e21c0569-45c5-436a-8b90-baf5df406f36?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0","level":"info","message":"auth send jwt","requestID":"feb4843d03f45bf1d422e2cb3e2e9351"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"feb4843d03f45bf1d422e2cb3e2e9351","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"feb4843d03f45bf1d422e2cb3e2e9351"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.2646,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"feb4843d03f45bf1d422e2cb3e2e9351","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615929,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"feb4843d03f45bf1d422e2cb3e2e9351","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:27.291697818Z"}]},"request_id":"8c6f4ae6-bd37-4260-9fc1-ae45856a7979","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.4518495} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"feb4843d03f45bf1d422e2cb3e2e9351","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"feb4843d03f45bf1d422e2cb3e2e9351"} gateway-1 | {"time_local":"02/Aug/2024:16:25:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"feb4843d03f45bf1d422e2cb3e2e9351"} device-1 | {"level":"info","message":"GET /devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf? 200 17ms","method":"GET","requestID":"feb4843d03f45bf1d422e2cb3e2e9351","responseTime":17,"status":200,"url":"/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0","level":"info","message":"auth send jwt","requestID":"48f5c453e260a3fa50a1c39d32c39a50"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"48f5c453e260a3fa50a1c39d32c39a50","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"48f5c453e260a3fa50a1c39d32c39a50"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":2.111609,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"48f5c453e260a3fa50a1c39d32c39a50","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615929,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"48f5c453e260a3fa50a1c39d32c39a50","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25"},"level":"info","message":"Attempting to run experiment","requestID":"48f5c453e260a3fa50a1c39d32c39a50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25"},"level":"info","message":"Attempting to book experiment","requestID":"48f5c453e260a3fa50a1c39d32c39a50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25"},"level":"info","message":"Successfully booked experiment","requestID":"48f5c453e260a3fa50a1c39d32c39a50"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d521bf30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d5220d50-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.04734,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d521bf30-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615929,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d521bf30-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.928461,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d5220d50-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615929,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d5220d50-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21c0569-45c5-436a-8b90-baf5df406f36","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21c0569-45c5-436a-8b90-baf5df406f36","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:27.244831343Z"}]},"request_id":"ab1b18de-1f54-4802-baa3-8814d0a155fa","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.5180235} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d521bf30-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:27.291697818Z"}]},"request_id":"30bebe9d-d318-491c-9ccb-75da9b547b0d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.5198967} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d5220d50-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d521bf30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/e21c0569-45c5-436a-8b90-baf5df406f36? 200 23ms","method":"GET","requestID":"d521bf30-50eb-11ef-8434-2f6d198c7397","responseTime":23,"status":200,"url":"/devices/e21c0569-45c5-436a-8b90-baf5df406f36?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d5220d50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf? 200 24ms","method":"GET","requestID":"d5220d50-50eb-11ef-8434-2f6d198c7397","responseTime":24,"status":200,"url":"/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25"},"level":"info","message":"Setting up experiment","requestID":"48f5c453e260a3fa50a1c39d32c39a50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"48f5c453e260a3fa50a1c39d32c39a50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25"},"level":"info","message":"Successfully locked booking for experiment","requestID":"48f5c453e260a3fa50a1c39d32c39a50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"48f5c453e260a3fa50a1c39d32c39a50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"48f5c453e260a3fa50a1c39d32c39a50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25"},"level":"info","message":"Attempting to update booking for experiment","requestID":"48f5c453e260a3fa50a1c39d32c39a50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25"},"level":"info","message":"Successfully updated booking for experiment","requestID":"48f5c453e260a3fa50a1c39d32c39a50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25"},"level":"info","message":"Successfully set up experiment","requestID":"48f5c453e260a3fa50a1c39d32c39a50"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d52eb780-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d52f05a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d52f7ad0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.291822,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25"},"level":"info","message":"Successfully running experiment","requestID":"48f5c453e260a3fa50a1c39d32c39a50"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d52eb780-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615929,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d52eb780-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.213002,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d52f05a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615929,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d52f05a0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.918976,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21c0569-45c5-436a-8b90-baf5df406f36","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f4891108-7569-4dbe-8267-5f073908dccd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.6062067} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d52f7ad0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36","object_type":"device","rebac_allow":false,"scope_allow":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":"d52f7ad0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21c0569-45c5-436a-8b90-baf5df406f36","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21c0569-45c5-436a-8b90-baf5df406f36","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:27.244831343Z"}]},"request_id":"1e008aab-63d5-4504-b92c-0ec5e5601367","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.6088567} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:27.291697818Z"}]},"request_id":"25801a27-d8a7-45fd-8c86-d56e795e2fed","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.610475} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"d52eb780-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d52f05a0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d52f7ad0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/e21c0569-45c5-436a-8b90-baf5df406f36/signaling 200 22ms","method":"POST","requestID":"d52f7ad0-50eb-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/e21c0569-45c5-436a-8b90-baf5df406f36/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d52eb780-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/e21c0569-45c5-436a-8b90-baf5df406f36? 200 29ms","method":"GET","requestID":"d52eb780-50eb-11ef-8434-2f6d198c7397","responseTime":29,"status":200,"url":"/devices/e21c0569-45c5-436a-8b90-baf5df406f36?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d52f05a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf? 200 29ms","method":"GET","requestID":"d52f05a0-50eb-11ef-8434-2f6d198c7397","responseTime":29,"status":200,"url":"/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d533c090-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe0b50b65-6ba1-4ece-9e19-5751e4c1fd25#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe0b50b65-6ba1-4ece-9e19-5751e4c1fd25","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"ec283647-3e9b-4c85-ba4b-c8c66ff3a6b3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.6277134} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cdc7d2c5-a68f-4701-abbd-409816ff5e30","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.6281822} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d534d200-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"48f5c453e260a3fa50a1c39d32c39a50","responseTime":27,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"24da7bd6-7c10-4498-b6d2-41202350ea6f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.6322591} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.945412,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d533c090-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","object_type":"device","rebac_allow":false,"scope_allow":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":"d533c090-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d533c090-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf/signaling 200 14ms","method":"POST","requestID":"d533c090-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21c0569-45c5-436a-8b90-baf5df406f36","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"90cb36bf-972a-4511-bd93-92d3a46a39b4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.638906} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.85472,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d534d200-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36","object_type":"device","rebac_allow":false,"scope_allow":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":"d534d200-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"48f5c453e260a3fa50a1c39d32c39a50"} gateway-1 | {"time_local":"02/Aug/2024:16:25:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"782","request_time":"0.182","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"48f5c453e260a3fa50a1c39d32c39a50"} experiment-1 | {"level":"info","message":"POST /experiments? 201 175ms","method":"POST","requestID":"48f5c453e260a3fa50a1c39d32c39a50","responseTime":175,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d534d200-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/e21c0569-45c5-436a-8b90-baf5df406f36/signaling 200 12ms","method":"POST","requestID":"d534d200-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/e21c0569-45c5-436a-8b90-baf5df406f36/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d536f4e0-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0","level":"info","message":"auth send jwt","requestID":"cceebe449a243a640bee695b7bb8cb9a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cceebe449a243a640bee695b7bb8cb9a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cceebe449a243a640bee695b7bb8cb9a"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.682088,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cceebe449a243a640bee695b7bb8cb9a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615929,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"cceebe449a243a640bee695b7bb8cb9a","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d17cced5-ef6e-4677-bbf7-e9824553d6bc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.6517355} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.184793,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d536f4e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","object_type":"device","rebac_allow":false,"scope_allow":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":"d536f4e0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21c0569-45c5-436a-8b90-baf5df406f36","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21c0569-45c5-436a-8b90-baf5df406f36","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:27.244831343Z"}]},"request_id":"24adbc3b-6865-4fa9-9b68-7df973f67f49","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.655636} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d536f4e0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"cceebe449a243a640bee695b7bb8cb9a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf/signaling 200 10ms","method":"POST","requestID":"d536f4e0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"48f5c453e260a3fa50a1c39d32c39a50"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d538f0b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d53917c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cceebe449a243a640bee695b7bb8cb9a"} gateway-1 | {"time_local":"02/Aug/2024:16:25:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e21c0569-45c5-436a-8b90-baf5df406f36? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cceebe449a243a640bee695b7bb8cb9a"} device-1 | {"level":"info","message":"GET /devices/e21c0569-45c5-436a-8b90-baf5df406f36? 200 14ms","method":"GET","requestID":"cceebe449a243a640bee695b7bb8cb9a","responseTime":14,"status":200,"url":"/devices/e21c0569-45c5-436a-8b90-baf5df406f36?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.8451,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d538f0b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615929,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d538f0b0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.442221,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d53917c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615929,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d53917c0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0","level":"info","message":"auth send jwt","requestID":"621b10e00b85c7cf39c752e0dd455ff5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"621b10e00b85c7cf39c752e0dd455ff5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"621b10e00b85c7cf39c752e0dd455ff5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21c0569-45c5-436a-8b90-baf5df406f36","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21c0569-45c5-436a-8b90-baf5df406f36","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:27.244831343Z"}]},"request_id":"4935a4d1-61a9-490c-b6d7-0687f85caf29","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.6683352} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d538f0b0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:27.291697818Z"}]},"request_id":"9bdb5acc-3437-4b90-8c9d-68929cab596d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.6698933} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d538f0b0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d53917c0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.677301,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} device-1 | {"level":"info","message":"GET /devices/e21c0569-45c5-436a-8b90-baf5df406f36? 200 13ms","method":"GET","requestID":"d538f0b0-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/e21c0569-45c5-436a-8b90-baf5df406f36?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"621b10e00b85c7cf39c752e0dd455ff5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615929,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"621b10e00b85c7cf39c752e0dd455ff5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d53917c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf? 200 16ms","method":"GET","requestID":"d53917c0-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:27.291697818Z"}]},"request_id":"2ad3be3c-3fa3-4310-8c7f-0af36390e5b4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.6767733} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25"},"level":"info","message":"Building connection plan","requestID":"48f5c453e260a3fa50a1c39d32c39a50"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"e32055cc-8cd0-40d3-8848-05e9d450899d"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"53ef04e7-cc60-452c-853f-e308b6169718"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"3f94a37e-a208-457d-8987-183d1cef0cc3"}]},"level":"info","message":"Built pairwise service configurations","requestID":"48f5c453e260a3fa50a1c39d32c39a50"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"621b10e00b85c7cf39c752e0dd455ff5","responseTime":2,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"d53bfdf0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"d53bfdf0-50eb-11ef-a432-47ab85bb6d58"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"621b10e00b85c7cf39c752e0dd455ff5"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"d53bfdf0-50eb-11ef-a432-47ab85bb6d58","responseTime":1,"status":201,"url":"/rooms"} gateway-1 | {"time_local":"02/Aug/2024:16:25:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"621b10e00b85c7cf39c752e0dd455ff5"} device-1 | {"level":"info","message":"GET /devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf? 200 12ms","method":"GET","requestID":"621b10e00b85c7cf39c752e0dd455ff5","responseTime":12,"status":200,"url":"/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce?id=73318760-18b9-48e5-b086-ebe1a948d1eb","ws://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce?id=efe23b1a-af46-43af-94ca-564fbbbedafa"]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"48f5c453e260a3fa50a1c39d32c39a50"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"d53c9a30-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.675168,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d53c9a30-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615929,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d53c9a30-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"d9c0829a-473a-4c03-837d-d56d838967b7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.6972802} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"256ec86b-6181-40da-8d1f-1f35463a10db","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.6975062} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"d53c9a30-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"d53c9a30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"d53c9a30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b06b5bb9-d2b1-4b32-8094-bdc1e63f8794'","requestID":"d53c9a30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b06b5bb9-d2b1-4b32-8094-bdc1e63f8794'","requestID":"d53c9a30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"d53c9a30-50eb-11ef-8434-2f6d198c7397"} 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":"d53c9a30-50eb-11ef-8434-2f6d198c7397","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":"d53c9a30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b06b5bb9-d2b1-4b32-8094-bdc1e63f8794' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b06b5bb9-d2b1-4b32-8094-bdc1e63f8794","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"d5426690-50eb-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d86a8d4906b9244367cc2329abba2fb1","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)"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\"","requestID":"d5426690-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"d5426690-50eb-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d86a8d4906b9244367cc2329abba2fb1","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"d542b4b0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"efe23b1a-af46-43af-94ca-564fbbbedafa\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\"","requestID":"d542b4b0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"d542b4b0-50eb-11ef-a432-47ab85bb6d58"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/b06b5bb9-d2b1-4b32-8094-bdc1e63f8794"}}},"level":"info","message":"received a callback","requestID":"d86a8d4906b9244367cc2329abba2fb1"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} device-1 | {"data":{"peerconnection":"b06b5bb9-d2b1-4b32-8094-bdc1e63f8794","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 15ms","method":"POST","requestID":"d86a8d4906b9244367cc2329abba2fb1","responseTime":15,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25: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.019","http_referrer":"","http_user_agent":"node-fetch","requestID":"d86a8d4906b9244367cc2329abba2fb1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"48f5c453e260a3fa50a1c39d32c39a50"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d546ac50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"data":{"peerconnection":"b06b5bb9-d2b1-4b32-8094-bdc1e63f8794","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21c0569-45c5-436a-8b90-baf5df406f36","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9b32e36a-f4b5-43ba-aea9-e1e3cff059c6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.753533} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.414273,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d546ac50-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d546ac50-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b06b5bb9-d2b1-4b32-8094-bdc1e63f8794' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b06b5bb9-d2b1-4b32-8094-bdc1e63f8794","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d546ac50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/e21c0569-45c5-436a-8b90-baf5df406f36/signaling 200 21ms","method":"POST","requestID":"d546ac50-50eb-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/devices/e21c0569-45c5-436a-8b90-baf5df406f36/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b89c38ff9db41a2f5a549fcb9ff94bd1","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":"b89c38ff9db41a2f5a549fcb9ff94bd1","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d54a2ec0-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/b06b5bb9-d2b1-4b32-8094-bdc1e63f8794"}}},"level":"info","message":"received a callback","requestID":"b89c38ff9db41a2f5a549fcb9ff94bd1"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"42b541c5-496a-4834-a57f-d52a81952867","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.7775688} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.652562,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"d54b1920-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d54a2ec0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","object_type":"device","rebac_allow":false,"scope_allow":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":"d54a2ec0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb06b5bb9-d2b1-4b32-8094-bdc1e63f8794","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"090a19f7-b106-4ca4-943e-9f8c06f2c7aa","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.7832866} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.993213,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d54a2ec0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b06b5bb9-d2b1-4b32-8094-bdc1e63f8794","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d54b1920-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b06b5bb9-d2b1-4b32-8094-bdc1e63f8794","object_type":"peerconnection","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/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf/signaling 200 12ms","method":"POST","requestID":"d54a2ec0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d54b1920-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"d54b1920-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/b06b5bb9-d2b1-4b32-8094-bdc1e63f8794 200 9ms","method":"GET","requestID":"d54b1920-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/peerconnections/b06b5bb9-d2b1-4b32-8094-bdc1e63f8794"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 26ms","method":"POST","requestID":"b89c38ff9db41a2f5a549fcb9ff94bd1","responseTime":26,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25: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.029","http_referrer":"","http_user_agent":"node-fetch","requestID":"b89c38ff9db41a2f5a549fcb9ff94bd1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d54e4d70-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9e27011c-2290-4527-8536-c6ffc580131e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.8035464} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.206169,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d54e4d70-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","object_type":"device","rebac_allow":false,"scope_allow":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":"d54e4d70-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d54e4d70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf/signaling 200 8ms","method":"POST","requestID":"d54e4d70-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d54ffb20-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21c0569-45c5-436a-8b90-baf5df406f36","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d8b00c6c-9fc1-47fd-af9a-fae02c7b2023","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.8143446} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.478935,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d54ffb20-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36","object_type":"device","rebac_allow":false,"scope_allow":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":"d54ffb20-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d54ffb20-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/e21c0569-45c5-436a-8b90-baf5df406f36/signaling 200 8ms","method":"POST","requestID":"d54ffb20-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/e21c0569-45c5-436a-8b90-baf5df406f36/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0","level":"info","message":"auth send jwt","requestID":"529dbbff0b32410308410e5348bb1a0c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"529dbbff0b32410308410e5348bb1a0c","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25","requestID":"529dbbff0b32410308410e5348bb1a0c"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.196763,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"529dbbff0b32410308410e5348bb1a0c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615929,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"529dbbff0b32410308410e5348bb1a0c","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25","requestID":"529dbbff0b32410308410e5348bb1a0c"} gateway-1 | {"time_local":"02/Aug/2024:16:25:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25 HTTP/1.1","status": "200","body_bytes_sent":"855","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"529dbbff0b32410308410e5348bb1a0c"} experiment-1 | {"level":"info","message":"GET /experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25 200 16ms","method":"GET","requestID":"529dbbff0b32410308410e5348bb1a0c","responseTime":16,"status":200,"url":"/experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0","level":"info","message":"auth send jwt","requestID":"c3b1bdbc435fd72225489fdb71383b5c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c3b1bdbc435fd72225489fdb71383b5c","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25","requestID":"c3b1bdbc435fd72225489fdb71383b5c"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.306298,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c3b1bdbc435fd72225489fdb71383b5c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615929,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c3b1bdbc435fd72225489fdb71383b5c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25"},"level":"info","message":"Attempting to finish experiment","requestID":"c3b1bdbc435fd72225489fdb71383b5c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"d5672ca0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.294165,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:29Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b06b5bb9-d2b1-4b32-8094-bdc1e63f8794","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d5672ca0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/b06b5bb9-d2b1-4b32-8094-bdc1e63f8794","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615929,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkyOX0.wG8b6tSkCzlVmif_t3OiZmrINW-l6kDxk14lhv46oP0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d5672ca0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:25:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce?id=73318760-18b9-48e5-b086-ebe1a948d1eb HTTP/1.1","status": "101","body_bytes_sent":"940747","request_time":"0.258","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"6c0546a115f7baba63c386e2d2c35fa3"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"73318760-18b9-48e5-b086-ebe1a948d1eb\" from room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b06b5bb9-d2b1-4b32-8094-bdc1e63f8794' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b06b5bb9-d2b1-4b32-8094-bdc1e63f8794' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b06b5bb9-d2b1-4b32-8094-bdc1e63f8794","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"02/Aug/2024:16:25:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce?id=efe23b1a-af46-43af-94ca-564fbbbedafa HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.258","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":"cebf6c3c187928bb46a43abeb68d43a2"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"efe23b1a-af46-43af-94ca-564fbbbedafa\" in room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"efe23b1a-af46-43af-94ca-564fbbbedafa\" from room \"http://localhost/rooms/7c74106a-4bf1-4f8b-b985-32f3ec6876ce\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b06b5bb9-d2b1-4b32-8094-bdc1e63f8794","device":"e21c0569-45c5-436a-8b90-baf5df406f36","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2887f557fce36e5f70b88ab92713ea3c","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":"2887f557fce36e5f70b88ab92713ea3c","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/b06b5bb9-d2b1-4b32-8094-bdc1e63f8794"}}},"level":"info","message":"received a callback","requestID":"2887f557fce36e5f70b88ab92713ea3c"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"95afa1cd7ef3398ab1a96ebb5ddb23c6","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":"95afa1cd7ef3398ab1a96ebb5ddb23c6","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/b06b5bb9-d2b1-4b32-8094-bdc1e63f8794"}}},"level":"info","message":"received a callback","requestID":"95afa1cd7ef3398ab1a96ebb5ddb23c6"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ce0a18cf-9b3d-433c-a0d8-703d7954fb84","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.9891107} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb06b5bb9-d2b1-4b32-8094-bdc1e63f8794': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb06b5bb9-d2b1-4b32-8094-bdc1e63f8794","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"0da2062e-6cf1-48fc-b31a-3d7ac47b71cb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615929.9895308} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"d5672ca0-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"b06b5bb9-d2b1-4b32-8094-bdc1e63f8794","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36'"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"d5672ca0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/b06b5bb9-d2b1-4b32-8094-bdc1e63f8794 204 44ms","method":"DELETE","requestID":"d5672ca0-50eb-11ef-8434-2f6d198c7397","responseTime":44,"status":204,"url":"/peerconnections/b06b5bb9-d2b1-4b32-8094-bdc1e63f8794"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25"},"level":"info","message":"Successfully finished experiment","requestID":"c3b1bdbc435fd72225489fdb71383b5c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d571db00-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:30Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b0ebf088-8499-456c-96e5-edfdd3f3aaed","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615930.0377557} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.29693,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d571db00-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf","object_type":"device","rebac_allow":false,"scope_allow":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":"d571db00-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d571db00-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf/signaling 200 12ms","method":"POST","requestID":"d571db00-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe0b50b65-6ba1-4ece-9e19-5751e4c1fd25': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe0b50b65-6ba1-4ece-9e19-5751e4c1fd25","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"52d4e947-9e38-4046-9acc-fdf4c24d8a56","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615930.0462754} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ff9e7d56-d0d2-46d9-af2d-92f8c633fa82","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615930.0463998} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d573fde0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"c3b1bdbc435fd72225489fdb71383b5c","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:30Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe21c0569-45c5-436a-8b90-baf5df406f36","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"86c78601-b940-4a4c-98f2-70f06f8cff03","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615930.0541446} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.367403,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d573fde0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e21c0569-45c5-436a-8b90-baf5df406f36","object_type":"device","rebac_allow":false,"scope_allow":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":"d573fde0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d573fde0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/e21c0569-45c5-436a-8b90-baf5df406f36/signaling 200 15ms","method":"POST","requestID":"d573fde0-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/e21c0569-45c5-436a-8b90-baf5df406f36/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25","requestID":"c3b1bdbc435fd72225489fdb71383b5c"} gateway-1 | {"time_local":"02/Aug/2024:16:25:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.178","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c3b1bdbc435fd72225489fdb71383b5c"} gateway-1 | {"time_local":"02/Aug/2024:16:25:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1438","request_time":"2.251","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"825d60aaf4ae7b111f48cb5aac3300d7"} experiment-1 | {"level":"info","message":"DELETE /experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25 204 174ms","method":"DELETE","requestID":"c3b1bdbc435fd72225489fdb71383b5c","responseTime":174,"status":204,"url":"/experiments/e0b50b65-6ba1-4ece-9e19-5751e4c1fd25"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 138ms","method":"POST","requestID":"2887f557fce36e5f70b88ab92713ea3c","responseTime":138,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:30 +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":"2887f557fce36e5f70b88ab92713ea3c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 137ms","method":"POST","requestID":"95afa1cd7ef3398ab1a96ebb5ddb23c6","responseTime":137,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:30 +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":"95afa1cd7ef3398ab1a96ebb5ddb23c6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMH0.ljHs62x2jqrNft3AVrYw202Lxiy03iDf-rpWppkZaNg","level":"info","message":"auth send jwt","requestID":"17b43d549615b17d71ac7e1f47603875"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"17b43d549615b17d71ac7e1f47603875","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"17b43d549615b17d71ac7e1f47603875"} gateway-1 | {"time_local":"02/Aug/2024:16:25:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1437","request_time":"0.817","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":"a1e0be2d5fb82782c626f66716cf58b9"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.980245,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"17b43d549615b17d71ac7e1f47603875","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615930,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMH0.ljHs62x2jqrNft3AVrYw202Lxiy03iDf-rpWppkZaNg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"17b43d549615b17d71ac7e1f47603875","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/1e7ec92e-1cd1-4c4a-8a8a-ce7076939bcf' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25dc5340-5551-4f7f-8893-f433b28d1f15","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"99a152a1-6209-4ee8-bbaa-a691788133e8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615930.1460664} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"17b43d549615b17d71ac7e1f47603875","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/e21c0569-45c5-436a-8b90-baf5df406f36' 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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"36d1fd74-9774-492d-bc57-ec69d2069983","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615930.1514306} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"17b43d549615b17d71ac7e1f47603875","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25dc5340-5551-4f7f-8893-f433b28d1f15","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"7047fa97-bcf6-43c7-9a1a-99871b7db33b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615930.1610136} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7bf72a1e-3d13-4bf8-98e0-567f7c0bb107","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615930.161276} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"17b43d549615b17d71ac7e1f47603875","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25dc5340-5551-4f7f-8893-f433b28d1f15","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25dc5340-5551-4f7f-8893-f433b28d1f15","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:30.160984653Z"}]},"request_id":"80032d36-b1ba-4445-9407-bde8bcefc07e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615930.1662343} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"17b43d549615b17d71ac7e1f47603875","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"17b43d549615b17d71ac7e1f47603875"} gateway-1 | {"time_local":"02/Aug/2024:16:25:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"17b43d549615b17d71ac7e1f47603875"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"17b43d549615b17d71ac7e1f47603875","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMH0.ljHs62x2jqrNft3AVrYw202Lxiy03iDf-rpWppkZaNg","level":"info","message":"auth send jwt","requestID":"8875cfcbe1ccfd35196a398c04debfa3"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8875cfcbe1ccfd35196a398c04debfa3","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8875cfcbe1ccfd35196a398c04debfa3"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.728404,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"8875cfcbe1ccfd35196a398c04debfa3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615930,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMH0.ljHs62x2jqrNft3AVrYw202Lxiy03iDf-rpWppkZaNg"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"8875cfcbe1ccfd35196a398c04debfa3","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9d3554c-6d4f-43be-a359-19f24d3a5a09","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4fa3c6cc-12b3-4252-8712-782b8f4c0cca","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615930.1952114} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8875cfcbe1ccfd35196a398c04debfa3","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"92a3f29c-f12e-441a-bc73-67506e795181","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615930.1999032} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"8875cfcbe1ccfd35196a398c04debfa3","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9d3554c-6d4f-43be-a359-19f24d3a5a09","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"612e4742-c2d2-4164-993c-5d8dce020156","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615930.2104852} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c41cb545-af16-4c98-ac64-31787c2a8fa6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615930.210628} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"8875cfcbe1ccfd35196a398c04debfa3","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9d3554c-6d4f-43be-a359-19f24d3a5a09","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9d3554c-6d4f-43be-a359-19f24d3a5a09","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:30.210454143Z"}]},"request_id":"9c920e98-997a-4843-bc88-7bf143c3eaf4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615930.215143} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8875cfcbe1ccfd35196a398c04debfa3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8875cfcbe1ccfd35196a398c04debfa3"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"8875cfcbe1ccfd35196a398c04debfa3","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8875cfcbe1ccfd35196a398c04debfa3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMH0.ljHs62x2jqrNft3AVrYw202Lxiy03iDf-rpWppkZaNg","level":"info","message":"auth send jwt","requestID":"ee160755c5974c9ff86ef17c62ea96c4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ee160755c5974c9ff86ef17c62ea96c4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ee160755c5974c9ff86ef17c62ea96c4"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.341675,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ee160755c5974c9ff86ef17c62ea96c4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615930,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMH0.ljHs62x2jqrNft3AVrYw202Lxiy03iDf-rpWppkZaNg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ee160755c5974c9ff86ef17c62ea96c4","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25dc5340-5551-4f7f-8893-f433b28d1f15","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25dc5340-5551-4f7f-8893-f433b28d1f15","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:30.160984653Z"}]},"request_id":"7ab86df4-4f8c-422f-89d2-5ba6146b3cfe","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615930.7336178} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ee160755c5974c9ff86ef17c62ea96c4","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"81f25b7f-1174-45e0-bf3b-9ec87fe67c48","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615930.7401938} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ee160755c5974c9ff86ef17c62ea96c4","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25dc5340-5551-4f7f-8893-f433b28d1f15","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25dc5340-5551-4f7f-8893-f433b28d1f15","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:30.160984653Z"}]},"request_id":"7dac116b-5f2f-4208-afef-0c0c75106ab4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615930.7513433} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ee160755c5974c9ff86ef17c62ea96c4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ee160755c5974c9ff86ef17c62ea96c4"} gateway-1 | {"time_local":"02/Aug/2024:16:25:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/25dc5340-5551-4f7f-8893-f433b28d1f15 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.039","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"ee160755c5974c9ff86ef17c62ea96c4"} device-1 | {"level":"info","message":"PATCH /devices/25dc5340-5551-4f7f-8893-f433b28d1f15 200 33ms","method":"PATCH","requestID":"ee160755c5974c9ff86ef17c62ea96c4","responseTime":33,"status":200,"url":"/devices/25dc5340-5551-4f7f-8893-f433b28d1f15"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMH0.ljHs62x2jqrNft3AVrYw202Lxiy03iDf-rpWppkZaNg","level":"info","message":"auth send jwt","requestID":"103764bc3bf5b752ca4b7e9d6db4a503"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"103764bc3bf5b752ca4b7e9d6db4a503","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"103764bc3bf5b752ca4b7e9d6db4a503"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:30Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.115474,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"103764bc3bf5b752ca4b7e9d6db4a503","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615930,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMH0.ljHs62x2jqrNft3AVrYw202Lxiy03iDf-rpWppkZaNg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"103764bc3bf5b752ca4b7e9d6db4a503","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"103764bc3bf5b752ca4b7e9d6db4a503"} gateway-1 | {"time_local":"02/Aug/2024:16:25:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/25dc5340-5551-4f7f-8893-f433b28d1f15/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"103764bc3bf5b752ca4b7e9d6db4a503"} device-1 | {"level":"info","message":"POST /devices/25dc5340-5551-4f7f-8893-f433b28d1f15/websocket 200 19ms","method":"POST","requestID":"103764bc3bf5b752ca4b7e9d6db4a503","responseTime":19,"status":200,"url":"/devices/25dc5340-5551-4f7f-8893-f433b28d1f15/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2f806a695ed84f47dd917e0312f4733a","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":"2f806a695ed84f47dd917e0312f4733a","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09/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":"2f806a695ed84f47dd917e0312f4733a"} device-1 | {"level":"info","message":"OPTIONS /devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09/websocket 200 1ms","method":"OPTIONS","requestID":"2f806a695ed84f47dd917e0312f4733a","responseTime":1,"status":200,"url":"/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMn0.Au32IGodU0aFQMbkBQRf-QMoZghqgk8DLRWzlGa09z4","level":"info","message":"auth send jwt","requestID":"ff0f5dbc169ac584eb0e3acd0d0c8f8d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ff0f5dbc169ac584eb0e3acd0d0c8f8d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ff0f5dbc169ac584eb0e3acd0d0c8f8d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.21831,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ff0f5dbc169ac584eb0e3acd0d0c8f8d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615932,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMn0.Au32IGodU0aFQMbkBQRf-QMoZghqgk8DLRWzlGa09z4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ff0f5dbc169ac584eb0e3acd0d0c8f8d","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ff0f5dbc169ac584eb0e3acd0d0c8f8d"} gateway-1 | {"time_local":"02/Aug/2024:16:25:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.032","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":"ff0f5dbc169ac584eb0e3acd0d0c8f8d"} device-1 | {"level":"info","message":"POST /devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09/websocket 200 26ms","method":"POST","requestID":"ff0f5dbc169ac584eb0e3acd0d0c8f8d","responseTime":26,"status":200,"url":"/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"aee119226390949fbb0f78229a9bdb5a","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":"aee119226390949fbb0f78229a9bdb5a","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"aee119226390949fbb0f78229a9bdb5a"} device-1 | {"level":"info","message":"OPTIONS /devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09? 200 1ms","method":"OPTIONS","requestID":"aee119226390949fbb0f78229a9bdb5a","responseTime":1,"status":200,"url":"/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMn0.Au32IGodU0aFQMbkBQRf-QMoZghqgk8DLRWzlGa09z4","level":"info","message":"auth send jwt","requestID":"0c43def8ed2514689807b47115f3ebde"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0c43def8ed2514689807b47115f3ebde","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"0c43def8ed2514689807b47115f3ebde"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.224354,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0c43def8ed2514689807b47115f3ebde","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615932,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMn0.Au32IGodU0aFQMbkBQRf-QMoZghqgk8DLRWzlGa09z4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0c43def8ed2514689807b47115f3ebde","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9d3554c-6d4f-43be-a359-19f24d3a5a09","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9d3554c-6d4f-43be-a359-19f24d3a5a09","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:30.210454143Z"}]},"request_id":"829bd2f9-8c81-4d75-8a4d-648f8ad767db","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.2847002} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0c43def8ed2514689807b47115f3ebde","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0be57d65-cb18-49a1-b670-11b806ff5971","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.2923167} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"0c43def8ed2514689807b47115f3ebde","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9d3554c-6d4f-43be-a359-19f24d3a5a09","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9d3554c-6d4f-43be-a359-19f24d3a5a09","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:30.210454143Z"}]},"request_id":"5a4fdc16-eb19-4cf1-9118-6502df9b5252","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.3024955} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0c43def8ed2514689807b47115f3ebde","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"0c43def8ed2514689807b47115f3ebde"} gateway-1 | {"time_local":"02/Aug/2024:16:25:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.041","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":"0c43def8ed2514689807b47115f3ebde"} device-1 | {"level":"info","message":"PATCH /devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09? 200 35ms","method":"PATCH","requestID":"0c43def8ed2514689807b47115f3ebde","responseTime":35,"status":200,"url":"/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMn0.Au32IGodU0aFQMbkBQRf-QMoZghqgk8DLRWzlGa09z4","level":"info","message":"auth send jwt","requestID":"812ceb05fd9752c82230471d201b8bc6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"812ceb05fd9752c82230471d201b8bc6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"812ceb05fd9752c82230471d201b8bc6"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.985297,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"812ceb05fd9752c82230471d201b8bc6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615932,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMn0.Au32IGodU0aFQMbkBQRf-QMoZghqgk8DLRWzlGa09z4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"812ceb05fd9752c82230471d201b8bc6","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25dc5340-5551-4f7f-8893-f433b28d1f15","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25dc5340-5551-4f7f-8893-f433b28d1f15","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:30.160984653Z"}]},"request_id":"b26b0bcc-fa64-4c1b-b937-133ff945b3ef","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.334119} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"812ceb05fd9752c82230471d201b8bc6","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"812ceb05fd9752c82230471d201b8bc6"} device-1 | {"level":"info","message":"GET /devices/25dc5340-5551-4f7f-8893-f433b28d1f15? 200 17ms","method":"GET","requestID":"812ceb05fd9752c82230471d201b8bc6","responseTime":17,"status":200,"url":"/devices/25dc5340-5551-4f7f-8893-f433b28d1f15?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/25dc5340-5551-4f7f-8893-f433b28d1f15? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"812ceb05fd9752c82230471d201b8bc6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMn0.Au32IGodU0aFQMbkBQRf-QMoZghqgk8DLRWzlGa09z4","level":"info","message":"auth send jwt","requestID":"190eaa995b7970ddb7e5a893d149ae4d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"190eaa995b7970ddb7e5a893d149ae4d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"190eaa995b7970ddb7e5a893d149ae4d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.265522,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"190eaa995b7970ddb7e5a893d149ae4d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615932,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMn0.Au32IGodU0aFQMbkBQRf-QMoZghqgk8DLRWzlGa09z4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"190eaa995b7970ddb7e5a893d149ae4d","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9d3554c-6d4f-43be-a359-19f24d3a5a09","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9d3554c-6d4f-43be-a359-19f24d3a5a09","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:30.210454143Z"}]},"request_id":"46925f00-bd41-4288-9f35-11b97a935586","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.3584085} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"190eaa995b7970ddb7e5a893d149ae4d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"190eaa995b7970ddb7e5a893d149ae4d"} gateway-1 | {"time_local":"02/Aug/2024:16:25:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"190eaa995b7970ddb7e5a893d149ae4d"} device-1 | {"level":"info","message":"GET /devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09? 200 18ms","method":"GET","requestID":"190eaa995b7970ddb7e5a893d149ae4d","responseTime":18,"status":200,"url":"/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMn0.Au32IGodU0aFQMbkBQRf-QMoZghqgk8DLRWzlGa09z4","level":"info","message":"auth send jwt","requestID":"24be110f19e3454d266e7a68fd1ab557"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"24be110f19e3454d266e7a68fd1ab557","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"24be110f19e3454d266e7a68fd1ab557"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.300625,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"24be110f19e3454d266e7a68fd1ab557","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615932,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMn0.Au32IGodU0aFQMbkBQRf-QMoZghqgk8DLRWzlGa09z4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"24be110f19e3454d266e7a68fd1ab557","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8cf7129-5714-4838-89b6-26d1a2495e76"},"level":"info","message":"Attempting to run experiment","requestID":"24be110f19e3454d266e7a68fd1ab557"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8cf7129-5714-4838-89b6-26d1a2495e76"},"level":"info","message":"Attempting to book experiment","requestID":"24be110f19e3454d266e7a68fd1ab557"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8cf7129-5714-4838-89b6-26d1a2495e76"},"level":"info","message":"Successfully booked experiment","requestID":"24be110f19e3454d266e7a68fd1ab557"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d6dcdcb0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d6dd2ad0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.780524,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d6dcdcb0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615932,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMn0.Au32IGodU0aFQMbkBQRf-QMoZghqgk8DLRWzlGa09z4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d6dcdcb0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.343351,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d6dd2ad0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615932,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMn0.Au32IGodU0aFQMbkBQRf-QMoZghqgk8DLRWzlGa09z4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d6dd2ad0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25dc5340-5551-4f7f-8893-f433b28d1f15","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25dc5340-5551-4f7f-8893-f433b28d1f15","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:30.160984653Z"}]},"request_id":"053be7e8-0011-49c7-8d9f-0451b9456a07","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.4243286} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d6dcdcb0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9d3554c-6d4f-43be-a359-19f24d3a5a09","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9d3554c-6d4f-43be-a359-19f24d3a5a09","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:30.210454143Z"}]},"request_id":"073c7d69-fd5b-4ae2-b7ef-65ab99fb72de","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.4256082} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d6dd2ad0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d6dcdcb0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/25dc5340-5551-4f7f-8893-f433b28d1f15? 200 20ms","method":"GET","requestID":"d6dcdcb0-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/25dc5340-5551-4f7f-8893-f433b28d1f15?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d6dd2ad0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09? 200 19ms","method":"GET","requestID":"d6dd2ad0-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8cf7129-5714-4838-89b6-26d1a2495e76"},"level":"info","message":"Setting up experiment","requestID":"24be110f19e3454d266e7a68fd1ab557"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8cf7129-5714-4838-89b6-26d1a2495e76"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"24be110f19e3454d266e7a68fd1ab557"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8cf7129-5714-4838-89b6-26d1a2495e76"},"level":"info","message":"Successfully locked booking for experiment","requestID":"24be110f19e3454d266e7a68fd1ab557"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8cf7129-5714-4838-89b6-26d1a2495e76"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"24be110f19e3454d266e7a68fd1ab557"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8cf7129-5714-4838-89b6-26d1a2495e76"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"24be110f19e3454d266e7a68fd1ab557"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8cf7129-5714-4838-89b6-26d1a2495e76"},"level":"info","message":"Attempting to update booking for experiment","requestID":"24be110f19e3454d266e7a68fd1ab557"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8cf7129-5714-4838-89b6-26d1a2495e76"},"level":"info","message":"Successfully updated booking for experiment","requestID":"24be110f19e3454d266e7a68fd1ab557"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8cf7129-5714-4838-89b6-26d1a2495e76"},"level":"info","message":"Successfully set up experiment","requestID":"24be110f19e3454d266e7a68fd1ab557"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d6e84e60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d6e89c80-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8cf7129-5714-4838-89b6-26d1a2495e76"},"level":"info","message":"Successfully running experiment","requestID":"24be110f19e3454d266e7a68fd1ab557"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d6e911b0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.365991,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d6e84e60-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615932,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMn0.Au32IGodU0aFQMbkBQRf-QMoZghqgk8DLRWzlGa09z4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d6e84e60-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.247489,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d6e89c80-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615932,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMn0.Au32IGodU0aFQMbkBQRf-QMoZghqgk8DLRWzlGa09z4"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"d6e89c80-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25dc5340-5551-4f7f-8893-f433b28d1f15","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25dc5340-5551-4f7f-8893-f433b28d1f15","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:30.160984653Z"}]},"request_id":"5c89c3e8-56f4-40fe-81a0-d97a3210ceb1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.5030007} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9d3554c-6d4f-43be-a359-19f24d3a5a09","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9d3554c-6d4f-43be-a359-19f24d3a5a09","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:30.210454143Z"}]},"request_id":"98d0357c-7b3f-45d1-82b4-cdaff2d2f680","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.5045516} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d6e84e60-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:57316","level":"info","msg":"Received request.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d6e89c80-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25dc5340-5551-4f7f-8893-f433b28d1f15","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8622db71-9a20-4b6c-b422-c876b70612c2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.5074618} authorization-1 | {"client_addr":"127.0.0.1:57316","level":"info","msg":"Sent response.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.765024,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d6e911b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15","object_type":"device","rebac_allow":false,"scope_allow":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":"d6e911b0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d6e84e60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/25dc5340-5551-4f7f-8893-f433b28d1f15? 200 26ms","method":"GET","requestID":"d6e84e60-50eb-11ef-8434-2f6d198c7397","responseTime":26,"status":200,"url":"/devices/25dc5340-5551-4f7f-8893-f433b28d1f15?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d6e89c80-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09? 200 25ms","method":"GET","requestID":"d6e89c80-50eb-11ef-8434-2f6d198c7397","responseTime":25,"status":200,"url":"/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d6e911b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/25dc5340-5551-4f7f-8893-f433b28d1f15/signaling 200 24ms","method":"POST","requestID":"d6e911b0-50eb-11ef-8434-2f6d198c7397","responseTime":24,"status":200,"url":"/devices/25dc5340-5551-4f7f-8893-f433b28d1f15/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d6ecbb30-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc8cf7129-5714-4838-89b6-26d1a2495e76#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc8cf7129-5714-4838-89b6-26d1a2495e76","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"aa1417c8-e8f9-481d-9f49-f8ee17849412","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.516025} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5708ba6f-e36c-47f2-8d67-53549076e01d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.5164032} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d6ed3060-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"24be110f19e3454d266e7a68fd1ab557","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25dc5340-5551-4f7f-8893-f433b28d1f15","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"998ae104-85d0-439c-b455-2efec23829e2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.5247426} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.40715,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d6ecbb30-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15","object_type":"device","rebac_allow":false,"scope_allow":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":"d6ecbb30-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9d3554c-6d4f-43be-a359-19f24d3a5a09","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"deb13481-70fb-402c-b03c-e4cd92560d6b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.5263305} experiment-1 | {"data":{"experiment":"http://localhost/experiments/c8cf7129-5714-4838-89b6-26d1a2495e76","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"24be110f19e3454d266e7a68fd1ab557"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.199877,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d6ed3060-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09","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":"02/Aug/2024:16:25:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"782","request_time":"0.163","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"24be110f19e3454d266e7a68fd1ab557"} experiment-1 | {"level":"info","message":"POST /experiments? 201 157ms","method":"POST","requestID":"24be110f19e3454d266e7a68fd1ab557","responseTime":157,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"d6ed3060-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d6ecbb30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/25dc5340-5551-4f7f-8893-f433b28d1f15/signaling 200 20ms","method":"POST","requestID":"d6ecbb30-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/25dc5340-5551-4f7f-8893-f433b28d1f15/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d6ed3060-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09/signaling 200 18ms","method":"POST","requestID":"d6ed3060-50eb-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d6f01690-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:32Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMn0.Au32IGodU0aFQMbkBQRf-QMoZghqgk8DLRWzlGa09z4","level":"info","message":"auth send jwt","requestID":"48ce63e9c5024c949e0c328b058aaaed"} authentication-1 | {"level":"info","message":"GET /auth 200 12ms","method":"GET","requestID":"48ce63e9c5024c949e0c328b058aaaed","responseTime":12,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"48ce63e9c5024c949e0c328b058aaaed"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.01533,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9d3554c-6d4f-43be-a359-19f24d3a5a09","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9734eea0-6647-4233-ac54-293d453fb6a5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.5488312} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"48ce63e9c5024c949e0c328b058aaaed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615932,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMn0.Au32IGodU0aFQMbkBQRf-QMoZghqgk8DLRWzlGa09z4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"48ce63e9c5024c949e0c328b058aaaed","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":7.728719,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d6f01690-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09","object_type":"device","rebac_allow":false,"scope_allow":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":"d6f01690-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25dc5340-5551-4f7f-8893-f433b28d1f15","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25dc5340-5551-4f7f-8893-f433b28d1f15","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:30.160984653Z"}]},"request_id":"1ff3f84b-d748-4329-9f01-95f711834363","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.5542817} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d6f01690-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"48ce63e9c5024c949e0c328b058aaaed","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09/signaling 200 18ms","method":"POST","requestID":"d6f01690-50eb-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8cf7129-5714-4838-89b6-26d1a2495e76"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"24be110f19e3454d266e7a68fd1ab557"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d6f34ae0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d6f39900-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"48ce63e9c5024c949e0c328b058aaaed"} gateway-1 | {"time_local":"02/Aug/2024:16:25:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/25dc5340-5551-4f7f-8893-f433b28d1f15? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.031","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"48ce63e9c5024c949e0c328b058aaaed"} device-1 | {"level":"info","message":"GET /devices/25dc5340-5551-4f7f-8893-f433b28d1f15? 200 17ms","method":"GET","requestID":"48ce63e9c5024c949e0c328b058aaaed","responseTime":17,"status":200,"url":"/devices/25dc5340-5551-4f7f-8893-f433b28d1f15?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.045271,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d6f34ae0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615932,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMn0.Au32IGodU0aFQMbkBQRf-QMoZghqgk8DLRWzlGa09z4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d6f34ae0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.649522,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d6f39900-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615932,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMn0.Au32IGodU0aFQMbkBQRf-QMoZghqgk8DLRWzlGa09z4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d6f39900-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMn0.Au32IGodU0aFQMbkBQRf-QMoZghqgk8DLRWzlGa09z4","level":"info","message":"auth send jwt","requestID":"afc37ebf3fba0ec393a18eb0e4f7befe"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"afc37ebf3fba0ec393a18eb0e4f7befe","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"afc37ebf3fba0ec393a18eb0e4f7befe"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25dc5340-5551-4f7f-8893-f433b28d1f15","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25dc5340-5551-4f7f-8893-f433b28d1f15","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:30.160984653Z"}]},"request_id":"19f3003f-4fe4-4869-bde5-9ffaf4630c3d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.5686688} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d6f34ae0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9d3554c-6d4f-43be-a359-19f24d3a5a09","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9d3554c-6d4f-43be-a359-19f24d3a5a09","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:30.210454143Z"}]},"request_id":"ee3818dd-38a7-4ca3-b41d-4669d69748a8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.569542} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d6f39900-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.960414,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"afc37ebf3fba0ec393a18eb0e4f7befe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615932,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMn0.Au32IGodU0aFQMbkBQRf-QMoZghqgk8DLRWzlGa09z4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"afc37ebf3fba0ec393a18eb0e4f7befe","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d6f34ae0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/25dc5340-5551-4f7f-8893-f433b28d1f15? 200 15ms","method":"GET","requestID":"d6f34ae0-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/25dc5340-5551-4f7f-8893-f433b28d1f15?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d6f39900-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09? 200 16ms","method":"GET","requestID":"d6f39900-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9d3554c-6d4f-43be-a359-19f24d3a5a09","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9d3554c-6d4f-43be-a359-19f24d3a5a09","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:30.210454143Z"}]},"request_id":"aa7026f0-f830-47f7-8938-a62e31d901e6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.5764475} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8cf7129-5714-4838-89b6-26d1a2495e76"},"level":"info","message":"Building connection plan","requestID":"24be110f19e3454d266e7a68fd1ab557"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"d42a4db4-c454-468c-9e58-1a08c2400698"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"d2ac7ce9-395a-44e8-b1fa-2a133720d537"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"5fdcd2b0-4c77-4ee6-b476-d272f4d3e59d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"24be110f19e3454d266e7a68fd1ab557"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"afc37ebf3fba0ec393a18eb0e4f7befe","responseTime":3,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"d6f65820-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"d6f65820-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"d6f65820-50eb-11ef-a432-47ab85bb6d58","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7?id=0497ac65-1e94-4a66-b139-457bbde1895a","ws://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7?id=ffea88d9-9c7a-4f4f-8899-57dad5aa1535"]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"24be110f19e3454d266e7a68fd1ab557"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"d6f6cd50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"afc37ebf3fba0ec393a18eb0e4f7befe"} gateway-1 | {"time_local":"02/Aug/2024:16:25:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"afc37ebf3fba0ec393a18eb0e4f7befe"} device-1 | {"level":"info","message":"GET /devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09? 200 15ms","method":"GET","requestID":"afc37ebf3fba0ec393a18eb0e4f7befe","responseTime":15,"status":200,"url":"/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.904428,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d6f6cd50-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615932,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzMn0.Au32IGodU0aFQMbkBQRf-QMoZghqgk8DLRWzlGa09z4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d6f6cd50-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"f9326a3a-1c07-4866-8ad1-8ef0f979dee7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.5972016} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"03f96027-99b3-45db-ab57-e4459596d655","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.597436} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"d6f6cd50-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"d6f6cd50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"d6f6cd50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/7caa0c39-6816-430f-913a-71b554293eff'","requestID":"d6f6cd50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/7caa0c39-6816-430f-913a-71b554293eff'","requestID":"d6f6cd50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"d6f6cd50-50eb-11ef-8434-2f6d198c7397"} 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":"d6f6cd50-50eb-11ef-8434-2f6d198c7397","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":"d6f6cd50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/7caa0c39-6816-430f-913a-71b554293eff' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7caa0c39-6816-430f-913a-71b554293eff","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"d6fdab20-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0497ac65-1e94-4a66-b139-457bbde1895a\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\"","requestID":"d6fdab20-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"d6fdab20-50eb-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"df6f45949517be31f5b203a034e7fb9a","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":"df6f45949517be31f5b203a034e7fb9a","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"d6fdd230-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\"","requestID":"d6fdd230-50eb-11ef-a432-47ab85bb6d58"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/7caa0c39-6816-430f-913a-71b554293eff"}}},"level":"info","message":"received a callback","requestID":"df6f45949517be31f5b203a034e7fb9a"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"d6fdd230-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} device-1 | {"data":{"peerconnection":"7caa0c39-6816-430f-913a-71b554293eff","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 13ms","method":"POST","requestID":"df6f45949517be31f5b203a034e7fb9a","responseTime":13,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25: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.015","http_referrer":"","http_user_agent":"node-fetch","requestID":"df6f45949517be31f5b203a034e7fb9a"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8cf7129-5714-4838-89b6-26d1a2495e76"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"24be110f19e3454d266e7a68fd1ab557"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d701a2c0-50eb-11ef-8434-2f6d198c7397"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:32Z"} device-1 | {"data":{"peerconnection":"7caa0c39-6816-430f-913a-71b554293eff","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25dc5340-5551-4f7f-8893-f433b28d1f15","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b6c0ec1f-d849-4129-81f0-89e7a5d59b0e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.6574414} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.997377,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d701a2c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15","object_type":"device","rebac_allow":false,"scope_allow":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":"d701a2c0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d701a2c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/25dc5340-5551-4f7f-8893-f433b28d1f15/signaling 200 23ms","method":"POST","requestID":"d701a2c0-50eb-11ef-8434-2f6d198c7397","responseTime":23,"status":200,"url":"/devices/25dc5340-5551-4f7f-8893-f433b28d1f15/signaling"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/7caa0c39-6816-430f-913a-71b554293eff' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7caa0c39-6816-430f-913a-71b554293eff","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d705c170-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9d10c63df5c62d419b0c6d56b3953291","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":"9d10c63df5c62d419b0c6d56b3953291","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/7caa0c39-6816-430f-913a-71b554293eff"}}},"level":"info","message":"received a callback","requestID":"9d10c63df5c62d419b0c6d56b3953291"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:32Z"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9d3554c-6d4f-43be-a359-19f24d3a5a09","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"16507a4d-9699-4b48-ad7b-799930d4edfd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.6888711} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"d7072100-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":7.266917,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d705c170-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09","object_type":"device","rebac_allow":false,"scope_allow":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":"d705c170-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7caa0c39-6816-430f-913a-71b554293eff","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"72d1247c-b1d7-4d9e-bda3-3f51459ca653","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.6951096} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d705c170-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09/signaling 200 17ms","method":"POST","requestID":"d705c170-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.740121,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7caa0c39-6816-430f-913a-71b554293eff","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d7072100-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/7caa0c39-6816-430f-913a-71b554293eff","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":"d7072100-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"d7072100-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/7caa0c39-6816-430f-913a-71b554293eff 200 18ms","method":"GET","requestID":"d7072100-50eb-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/peerconnections/7caa0c39-6816-430f-913a-71b554293eff"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 39ms","method":"POST","requestID":"9d10c63df5c62d419b0c6d56b3953291","responseTime":39,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25: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.043","http_referrer":"","http_user_agent":"node-fetch","requestID":"9d10c63df5c62d419b0c6d56b3953291"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d70c2a10-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25dc5340-5551-4f7f-8893-f433b28d1f15","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"46539a8b-0dfb-4d8d-817e-64d36afc2933","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.7269251} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.78417,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d70c2a10-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15","object_type":"device","rebac_allow":false,"scope_allow":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":"d70c2a10-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d70c2a10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/25dc5340-5551-4f7f-8893-f433b28d1f15/signaling 200 10ms","method":"POST","requestID":"d70c2a10-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/25dc5340-5551-4f7f-8893-f433b28d1f15/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d70e25e0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9d3554c-6d4f-43be-a359-19f24d3a5a09","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7834d3c8-c9bf-4243-ab5f-68b7965f9bbd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615932.7386112} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.418702,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d70e25e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09","object_type":"device","rebac_allow":false,"scope_allow":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":"d70e25e0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d70e25e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09/signaling 200 9ms","method":"POST","requestID":"d70e25e0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4","level":"info","message":"auth send jwt","requestID":"324c9a5cd24c38870b98c5dcbc2c5ae2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"324c9a5cd24c38870b98c5dcbc2c5ae2","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c8cf7129-5714-4838-89b6-26d1a2495e76","requestID":"324c9a5cd24c38870b98c5dcbc2c5ae2"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.280247,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c8cf7129-5714-4838-89b6-26d1a2495e76","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"324c9a5cd24c38870b98c5dcbc2c5ae2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/c8cf7129-5714-4838-89b6-26d1a2495e76","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615933,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"324c9a5cd24c38870b98c5dcbc2c5ae2","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c8cf7129-5714-4838-89b6-26d1a2495e76","requestID":"324c9a5cd24c38870b98c5dcbc2c5ae2"} gateway-1 | {"time_local":"02/Aug/2024:16:25:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c8cf7129-5714-4838-89b6-26d1a2495e76 HTTP/1.1","status": "200","body_bytes_sent":"855","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"324c9a5cd24c38870b98c5dcbc2c5ae2"} experiment-1 | {"level":"info","message":"GET /experiments/c8cf7129-5714-4838-89b6-26d1a2495e76 200 16ms","method":"GET","requestID":"324c9a5cd24c38870b98c5dcbc2c5ae2","responseTime":16,"status":200,"url":"/experiments/c8cf7129-5714-4838-89b6-26d1a2495e76"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4","level":"info","message":"auth send jwt","requestID":"ad4cf2bc8fc7c159c7825fdd8cacf60c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ad4cf2bc8fc7c159c7825fdd8cacf60c","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/c8cf7129-5714-4838-89b6-26d1a2495e76","requestID":"ad4cf2bc8fc7c159c7825fdd8cacf60c"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.208498,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c8cf7129-5714-4838-89b6-26d1a2495e76","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ad4cf2bc8fc7c159c7825fdd8cacf60c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/c8cf7129-5714-4838-89b6-26d1a2495e76","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615933,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ad4cf2bc8fc7c159c7825fdd8cacf60c","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8cf7129-5714-4838-89b6-26d1a2495e76"},"level":"info","message":"Attempting to finish experiment","requestID":"ad4cf2bc8fc7c159c7825fdd8cacf60c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"d7445110-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.836857,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7caa0c39-6816-430f-913a-71b554293eff","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d7445110-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/7caa0c39-6816-430f-913a-71b554293eff","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615933,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d7445110-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:25:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7?id=0497ac65-1e94-4a66-b139-457bbde1895a HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.476","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"b26f22bd21cbbda06e66bab8a40366d9"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"0497ac65-1e94-4a66-b139-457bbde1895a\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"0497ac65-1e94-4a66-b139-457bbde1895a\" from room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/7caa0c39-6816-430f-913a-71b554293eff","device":"c9d3554c-6d4f-43be-a359-19f24d3a5a09","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/7caa0c39-6816-430f-913a-71b554293eff' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/7caa0c39-6816-430f-913a-71b554293eff' to 'http://localhost/callbacks/experiment'"} gateway-1 | {"time_local":"02/Aug/2024:16:25:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7?id=ffea88d9-9c7a-4f4f-8899-57dad5aa1535 HTTP/1.1","status": "101","body_bytes_sent":"1203025","request_time":"0.476","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":"82bb63d37739f86869d892eb61feef83"} device-1 | {"data":{"peerconnection":"7caa0c39-6816-430f-913a-71b554293eff","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" in room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"ffea88d9-9c7a-4f4f-8899-57dad5aa1535\" from room \"http://localhost/rooms/a99fde1c-5523-46fc-ad65-8b1dec0e9da7\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7d398af4538576551a72fb6bb345b986","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":"7d398af4538576551a72fb6bb345b986","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7caa0c39-6816-430f-913a-71b554293eff': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7caa0c39-6816-430f-913a-71b554293eff","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"f948ace5-d6ce-4cbb-b1a1-20fb6a287bee","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615933.1053035} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"038394f62aed8a9b099d2951c0d23b2e","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"02c0bbb1-ea95-4645-889e-3bbd4e7206ac","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615933.1056218} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/7caa0c39-6816-430f-913a-71b554293eff"}}},"level":"info","message":"received a callback","requestID":"7d398af4538576551a72fb6bb345b986"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"038394f62aed8a9b099d2951c0d23b2e","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"d7445110-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/7caa0c39-6816-430f-913a-71b554293eff"}}},"level":"info","message":"received a callback","requestID":"038394f62aed8a9b099d2951c0d23b2e"} device-1 | {"data":{"peerconnection":"7caa0c39-6816-430f-913a-71b554293eff","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"d7445110-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/7caa0c39-6816-430f-913a-71b554293eff 204 35ms","method":"DELETE","requestID":"d7445110-50eb-11ef-8434-2f6d198c7397","responseTime":35,"status":204,"url":"/peerconnections/7caa0c39-6816-430f-913a-71b554293eff"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c8cf7129-5714-4838-89b6-26d1a2495e76"},"level":"info","message":"Successfully finished experiment","requestID":"ad4cf2bc8fc7c159c7825fdd8cacf60c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d74d2ab0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25dc5340-5551-4f7f-8893-f433b28d1f15","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"01ab3ea8-129e-4626-a292-6b72745e8d4d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615933.1540725} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.801129,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d74d2ab0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/25dc5340-5551-4f7f-8893-f433b28d1f15","object_type":"device","rebac_allow":false,"scope_allow":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":"d74d2ab0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d74d2ab0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/25dc5340-5551-4f7f-8893-f433b28d1f15/signaling 200 11ms","method":"POST","requestID":"d74d2ab0-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/25dc5340-5551-4f7f-8893-f433b28d1f15/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc8cf7129-5714-4838-89b6-26d1a2495e76': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc8cf7129-5714-4838-89b6-26d1a2495e76","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"6f518d5f-ae11-4d84-9abd-3cbdd9c42692","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615933.1607187} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d74f4d90-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"10856f72-80bd-424c-9618-65e329ff5355","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615933.1621246} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"ad4cf2bc8fc7c159c7825fdd8cacf60c","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9d3554c-6d4f-43be-a359-19f24d3a5a09","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3d85c8cc-74ea-42c9-aa0e-207e52efe272","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615933.166278} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.049695,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d74f4d90-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09","object_type":"device","rebac_allow":false,"scope_allow":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":"d74f4d90-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d74f4d90-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09/signaling 200 10ms","method":"POST","requestID":"d74f4d90-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/c9d3554c-6d4f-43be-a359-19f24d3a5a09/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/c8cf7129-5714-4838-89b6-26d1a2495e76","requestID":"ad4cf2bc8fc7c159c7825fdd8cacf60c"} gateway-1 | {"time_local":"02/Aug/2024:16:25:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/c8cf7129-5714-4838-89b6-26d1a2495e76 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":"ad4cf2bc8fc7c159c7825fdd8cacf60c"} experiment-1 | {"level":"info","message":"DELETE /experiments/c8cf7129-5714-4838-89b6-26d1a2495e76 204 190ms","method":"DELETE","requestID":"ad4cf2bc8fc7c159c7825fdd8cacf60c","responseTime":190,"status":204,"url":"/experiments/c8cf7129-5714-4838-89b6-26d1a2495e76"} gateway-1 | {"time_local":"02/Aug/2024:16:25:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1438","request_time":"2.479","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"6b09ac415a70f481c37662017c04fb05"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 158ms","method":"POST","requestID":"7d398af4538576551a72fb6bb345b986","responseTime":158,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25: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.162","http_referrer":"","http_user_agent":"node-fetch","requestID":"7d398af4538576551a72fb6bb345b986"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 159ms","method":"POST","requestID":"038394f62aed8a9b099d2951c0d23b2e","responseTime":159,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25: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.162","http_referrer":"","http_user_agent":"node-fetch","requestID":"038394f62aed8a9b099d2951c0d23b2e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4","level":"info","message":"auth send jwt","requestID":"cc37645413b8f848a5be38ffd68d38f1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cc37645413b8f848a5be38ffd68d38f1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"cc37645413b8f848a5be38ffd68d38f1"} gateway-1 | {"time_local":"02/Aug/2024:16:25:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1437","request_time":"1.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":"9ba7505c9432fc92a886324a3d1b7b9c"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.919734,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cc37645413b8f848a5be38ffd68d38f1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615933,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cc37645413b8f848a5be38ffd68d38f1","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/25dc5340-5551-4f7f-8893-f433b28d1f15' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0d5a207-d405-4240-9714-fa8884daf2cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"355e9a81-fda2-48a3-8f68-27ea85cb4ccc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615933.2889526} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"cc37645413b8f848a5be38ffd68d38f1","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/c9d3554c-6d4f-43be-a359-19f24d3a5a09' 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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"16200cd7-1d81-4170-bd4f-2b038738730f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615933.2936344} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"cc37645413b8f848a5be38ffd68d38f1","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0d5a207-d405-4240-9714-fa8884daf2cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"5290a374-df4c-45a8-9287-a52ecbde895d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615933.3089805} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8b69bb36-0c26-401b-ab7c-cac89aec0c75","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615933.3091307} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"cc37645413b8f848a5be38ffd68d38f1","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0d5a207-d405-4240-9714-fa8884daf2cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0d5a207-d405-4240-9714-fa8884daf2cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:33.308949617Z"}]},"request_id":"76b1ca09-3323-4d54-8972-618cf5e26586","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615933.3131297} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cc37645413b8f848a5be38ffd68d38f1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"cc37645413b8f848a5be38ffd68d38f1"} gateway-1 | {"time_local":"02/Aug/2024:16:25:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cc37645413b8f848a5be38ffd68d38f1"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"cc37645413b8f848a5be38ffd68d38f1","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4","level":"info","message":"auth send jwt","requestID":"acf600e845bb748d1099afed683dd3de"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"acf600e845bb748d1099afed683dd3de","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"acf600e845bb748d1099afed683dd3de"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.712994,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"acf600e845bb748d1099afed683dd3de","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615933,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"acf600e845bb748d1099afed683dd3de","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f383e6a-bd35-4a61-9941-f41361241eb5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"94a36c2d-e407-417e-95d0-f653cebdca76","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615933.3372238} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"acf600e845bb748d1099afed683dd3de","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8e28268e-aa75-46ec-bffd-5b70d9468e94","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615933.3422127} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"acf600e845bb748d1099afed683dd3de","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f383e6a-bd35-4a61-9941-f41361241eb5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"03e99bf5-11f3-4c2d-898d-f91be41a007b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615933.3526134} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c01ba659-71c1-4bf9-826e-f52f279db2ec","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615933.3529177} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"acf600e845bb748d1099afed683dd3de","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f383e6a-bd35-4a61-9941-f41361241eb5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f383e6a-bd35-4a61-9941-f41361241eb5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:33.352583384Z"}]},"request_id":"a744d75c-e9e8-4829-aec3-d7c566dc3be4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615933.3574572} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"acf600e845bb748d1099afed683dd3de","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"acf600e845bb748d1099afed683dd3de"} gateway-1 | {"time_local":"02/Aug/2024:16:25:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"acf600e845bb748d1099afed683dd3de"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"acf600e845bb748d1099afed683dd3de","responseTime":39,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4","level":"info","message":"auth send jwt","requestID":"b278032b7d80052700e56c82fef9fc3e"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"b278032b7d80052700e56c82fef9fc3e","responseTime":7,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4","level":"info","message":"auth send jwt","requestID":"50fdcc961989dca8f85dca3cb5dfaddb"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"50fdcc961989dca8f85dca3cb5dfaddb","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b278032b7d80052700e56c82fef9fc3e"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"50fdcc961989dca8f85dca3cb5dfaddb"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.60288,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b278032b7d80052700e56c82fef9fc3e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615933,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"b278032b7d80052700e56c82fef9fc3e","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.504084,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"50fdcc961989dca8f85dca3cb5dfaddb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615933,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"50fdcc961989dca8f85dca3cb5dfaddb","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f383e6a-bd35-4a61-9941-f41361241eb5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f383e6a-bd35-4a61-9941-f41361241eb5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:33.352583384Z"}]},"request_id":"5c809d1d-64d5-4009-9f75-9e1343904307","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615933.86943} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b278032b7d80052700e56c82fef9fc3e","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0d5a207-d405-4240-9714-fa8884daf2cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0d5a207-d405-4240-9714-fa8884daf2cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:33.308949617Z"}]},"request_id":"19ac8012-6f91-4cdc-996b-a633d7355970","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615933.8704464} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"50fdcc961989dca8f85dca3cb5dfaddb","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fcbaca37-1861-4b11-b226-ec4508880fe3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615933.8739982} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b278032b7d80052700e56c82fef9fc3e","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f5d8b02a-ed6a-4b36-a1a5-3472edd94adf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615933.875296} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"50fdcc961989dca8f85dca3cb5dfaddb","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0d5a207-d405-4240-9714-fa8884daf2cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0d5a207-d405-4240-9714-fa8884daf2cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:33.308949617Z"}]},"request_id":"3e67df1a-03fa-4bec-b6a0-80dbd8488e82","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615933.8782666} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"50fdcc961989dca8f85dca3cb5dfaddb","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"50fdcc961989dca8f85dca3cb5dfaddb"} device-1 | {"level":"info","message":"PATCH /devices/a0d5a207-d405-4240-9714-fa8884daf2cd 200 19ms","method":"PATCH","requestID":"50fdcc961989dca8f85dca3cb5dfaddb","responseTime":19,"status":200,"url":"/devices/a0d5a207-d405-4240-9714-fa8884daf2cd"} gateway-1 | {"time_local":"02/Aug/2024:16:25:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a0d5a207-d405-4240-9714-fa8884daf2cd HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.029","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"50fdcc961989dca8f85dca3cb5dfaddb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4","level":"info","message":"auth send jwt","requestID":"2cec71743ec5395a8914cbec4a455980"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2cec71743ec5395a8914cbec4a455980","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2cec71743ec5395a8914cbec4a455980"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f383e6a-bd35-4a61-9941-f41361241eb5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f383e6a-bd35-4a61-9941-f41361241eb5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:33.352583384Z"}]},"request_id":"e0acfefa-0475-4364-99cf-8b2ffdacc398","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615933.8891575} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b278032b7d80052700e56c82fef9fc3e","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.678987,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"2cec71743ec5395a8914cbec4a455980","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615933,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b278032b7d80052700e56c82fef9fc3e"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2cec71743ec5395a8914cbec4a455980","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:25:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3f383e6a-bd35-4a61-9941-f41361241eb5 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"b278032b7d80052700e56c82fef9fc3e"} device-1 | {"level":"info","message":"PATCH /devices/3f383e6a-bd35-4a61-9941-f41361241eb5 200 32ms","method":"PATCH","requestID":"b278032b7d80052700e56c82fef9fc3e","responseTime":32,"status":200,"url":"/devices/3f383e6a-bd35-4a61-9941-f41361241eb5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4","level":"info","message":"auth send jwt","requestID":"84957e08312df5edd9e86ec715b14882"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"84957e08312df5edd9e86ec715b14882","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"84957e08312df5edd9e86ec715b14882"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.962746,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"84957e08312df5edd9e86ec715b14882","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615933,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"84957e08312df5edd9e86ec715b14882","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2cec71743ec5395a8914cbec4a455980"} gateway-1 | {"time_local":"02/Aug/2024:16:25:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a0d5a207-d405-4240-9714-fa8884daf2cd/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"2cec71743ec5395a8914cbec4a455980"} device-1 | {"level":"info","message":"POST /devices/a0d5a207-d405-4240-9714-fa8884daf2cd/websocket 200 17ms","method":"POST","requestID":"2cec71743ec5395a8914cbec4a455980","responseTime":17,"status":200,"url":"/devices/a0d5a207-d405-4240-9714-fa8884daf2cd/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"84957e08312df5edd9e86ec715b14882"} gateway-1 | {"time_local":"02/Aug/2024:16:25:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3f383e6a-bd35-4a61-9941-f41361241eb5/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"84957e08312df5edd9e86ec715b14882"} device-1 | {"level":"info","message":"POST /devices/3f383e6a-bd35-4a61-9941-f41361241eb5/websocket 200 16ms","method":"POST","requestID":"84957e08312df5edd9e86ec715b14882","responseTime":16,"status":200,"url":"/devices/3f383e6a-bd35-4a61-9941-f41361241eb5/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4","level":"info","message":"auth send jwt","requestID":"6730c9c044d761fb444c590baa0d53c0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6730c9c044d761fb444c590baa0d53c0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6730c9c044d761fb444c590baa0d53c0"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.657161,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"6730c9c044d761fb444c590baa0d53c0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615933,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"6730c9c044d761fb444c590baa0d53c0","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0d5a207-d405-4240-9714-fa8884daf2cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0d5a207-d405-4240-9714-fa8884daf2cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:33.308949617Z"}]},"request_id":"0bc01f76-5fd9-445d-a185-201c05a0de7a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615933.9471207} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6730c9c044d761fb444c590baa0d53c0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6730c9c044d761fb444c590baa0d53c0"} device-1 | {"level":"info","message":"GET /devices/a0d5a207-d405-4240-9714-fa8884daf2cd? 200 13ms","method":"GET","requestID":"6730c9c044d761fb444c590baa0d53c0","responseTime":13,"status":200,"url":"/devices/a0d5a207-d405-4240-9714-fa8884daf2cd?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a0d5a207-d405-4240-9714-fa8884daf2cd? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6730c9c044d761fb444c590baa0d53c0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4","level":"info","message":"auth send jwt","requestID":"64fea7f8c614723780881a9be0a6536f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"64fea7f8c614723780881a9be0a6536f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"64fea7f8c614723780881a9be0a6536f"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.814206,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"64fea7f8c614723780881a9be0a6536f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615933,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"64fea7f8c614723780881a9be0a6536f","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f383e6a-bd35-4a61-9941-f41361241eb5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f383e6a-bd35-4a61-9941-f41361241eb5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:33.352583384Z"}]},"request_id":"f5559059-046a-42c6-88b5-d4cc721f8059","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615933.9676387} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"64fea7f8c614723780881a9be0a6536f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"64fea7f8c614723780881a9be0a6536f"} device-1 | {"level":"info","message":"GET /devices/3f383e6a-bd35-4a61-9941-f41361241eb5? 200 16ms","method":"GET","requestID":"64fea7f8c614723780881a9be0a6536f","responseTime":16,"status":200,"url":"/devices/3f383e6a-bd35-4a61-9941-f41361241eb5?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3f383e6a-bd35-4a61-9941-f41361241eb5? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"64fea7f8c614723780881a9be0a6536f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4","level":"info","message":"auth send jwt","requestID":"65e153e96df6b58bd890c47e7ef34601"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"65e153e96df6b58bd890c47e7ef34601","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"65e153e96df6b58bd890c47e7ef34601"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.298583,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"65e153e96df6b58bd890c47e7ef34601","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615933,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"65e153e96df6b58bd890c47e7ef34601","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06"},"level":"info","message":"Attempting to run experiment","requestID":"65e153e96df6b58bd890c47e7ef34601"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06"},"level":"info","message":"Attempting to book experiment","requestID":"65e153e96df6b58bd890c47e7ef34601"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06"},"level":"info","message":"Successfully booked experiment","requestID":"65e153e96df6b58bd890c47e7ef34601"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d7d21220-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d7d23930-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.033153,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d7d21220-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615933,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d7d21220-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.365804,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d7d23930-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615933,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d7d23930-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0d5a207-d405-4240-9714-fa8884daf2cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0d5a207-d405-4240-9714-fa8884daf2cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:33.308949617Z"}]},"request_id":"fb18ba3b-dde8-4fec-880a-8689a8d83bd1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.0359514} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d7d21220-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f383e6a-bd35-4a61-9941-f41361241eb5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f383e6a-bd35-4a61-9941-f41361241eb5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:33.352583384Z"}]},"request_id":"0432517f-c179-4b84-9715-130f18cd8b26","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.03691} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d7d23930-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d7d21220-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/a0d5a207-d405-4240-9714-fa8884daf2cd? 200 25ms","method":"GET","requestID":"d7d21220-50eb-11ef-8434-2f6d198c7397","responseTime":25,"status":200,"url":"/devices/a0d5a207-d405-4240-9714-fa8884daf2cd?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d7d23930-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/3f383e6a-bd35-4a61-9941-f41361241eb5? 200 25ms","method":"GET","requestID":"d7d23930-50eb-11ef-8434-2f6d198c7397","responseTime":25,"status":200,"url":"/devices/3f383e6a-bd35-4a61-9941-f41361241eb5?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06"},"level":"info","message":"Setting up experiment","requestID":"65e153e96df6b58bd890c47e7ef34601"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"65e153e96df6b58bd890c47e7ef34601"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06"},"level":"info","message":"Successfully locked booking for experiment","requestID":"65e153e96df6b58bd890c47e7ef34601"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"65e153e96df6b58bd890c47e7ef34601"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"65e153e96df6b58bd890c47e7ef34601"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06"},"level":"info","message":"Attempting to update booking for experiment","requestID":"65e153e96df6b58bd890c47e7ef34601"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06"},"level":"info","message":"Successfully updated booking for experiment","requestID":"65e153e96df6b58bd890c47e7ef34601"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06"},"level":"info","message":"Successfully set up experiment","requestID":"65e153e96df6b58bd890c47e7ef34601"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d7ddd1f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d7ddf900-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7de4720-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06"},"level":"info","message":"Successfully running experiment","requestID":"65e153e96df6b58bd890c47e7ef34601"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.758922,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d7ddd1f0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615933,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d7ddd1f0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.677154,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d7ddf900-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615933,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d7ddf900-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.696689,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0d5a207-d405-4240-9714-fa8884daf2cd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b4074d7e-3d98-4acb-a6a2-7e46d2f1ace8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.1064417} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d7de4720-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd","object_type":"device","rebac_allow":false,"scope_allow":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":"d7de4720-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0d5a207-d405-4240-9714-fa8884daf2cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0d5a207-d405-4240-9714-fa8884daf2cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:33.308949617Z"}]},"request_id":"236a178e-4e07-4255-9020-3232d1af86ca","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.1094658} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f383e6a-bd35-4a61-9941-f41361241eb5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f383e6a-bd35-4a61-9941-f41361241eb5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:33.352583384Z"}]},"request_id":"ccd09a7d-fd9a-4e7e-8f98-fa70ff6aaa35","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.1113894} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"d7ddd1f0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d7ddf900-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7de4720-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/a0d5a207-d405-4240-9714-fa8884daf2cd/signaling 200 22ms","method":"POST","requestID":"d7de4720-50eb-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/a0d5a207-d405-4240-9714-fa8884daf2cd/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d7ddd1f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/a0d5a207-d405-4240-9714-fa8884daf2cd? 200 27ms","method":"GET","requestID":"d7ddd1f0-50eb-11ef-8434-2f6d198c7397","responseTime":27,"status":200,"url":"/devices/a0d5a207-d405-4240-9714-fa8884daf2cd?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d7ddf900-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/3f383e6a-bd35-4a61-9941-f41361241eb5? 200 28ms","method":"GET","requestID":"d7ddf900-50eb-11ef-8434-2f6d198c7397","responseTime":28,"status":200,"url":"/devices/3f383e6a-bd35-4a61-9941-f41361241eb5?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7e23ec0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F76e366c3-4908-4c23-bda5-b97f5cc79d06#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F76e366c3-4908-4c23-bda5-b97f5cc79d06","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"915771ce-dd5e-4288-8c45-67f09814c282","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.126016} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7e2b3f0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f88f499f-03c9-460c-ae2b-abd5fa6e3254","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.126409} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"65e153e96df6b58bd890c47e7ef34601","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f383e6a-bd35-4a61-9941-f41361241eb5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4330c638-a8cd-4b2c-9e8f-b7d94619baac","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.1318393} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.407566,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d7e23ec0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5","object_type":"device","rebac_allow":false,"scope_allow":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":"d7e23ec0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0d5a207-d405-4240-9714-fa8884daf2cd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1b55c941-d6bd-4af3-a197-fed4e904a175","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.133828} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.608224,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d7e2b3f0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd","object_type":"device","rebac_allow":false,"scope_allow":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":"d7e2b3f0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"65e153e96df6b58bd890c47e7ef34601"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7e23ec0-50eb-11ef-8434-2f6d198c7397"} gateway-1 | {"time_local":"02/Aug/2024:16:25:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"786","request_time":"0.164","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"65e153e96df6b58bd890c47e7ef34601"} experiment-1 | {"level":"info","message":"POST /experiments? 201 159ms","method":"POST","requestID":"65e153e96df6b58bd890c47e7ef34601","responseTime":159,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"POST /devices/3f383e6a-bd35-4a61-9941-f41361241eb5/signaling 200 13ms","method":"POST","requestID":"d7e23ec0-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/3f383e6a-bd35-4a61-9941-f41361241eb5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7e2b3f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/a0d5a207-d405-4240-9714-fa8884daf2cd/signaling 200 12ms","method":"POST","requestID":"d7e2b3f0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/a0d5a207-d405-4240-9714-fa8884daf2cd/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7e4d6d0-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNH0.MjCLQ_EtMH4ZYjZ7osnHsb4JqcgAyMX7-6SWDoKMp7A","level":"info","message":"auth send jwt","requestID":"ec4218a70326ee57659ca3e1a910ab5e"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ec4218a70326ee57659ca3e1a910ab5e","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ec4218a70326ee57659ca3e1a910ab5e"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.654599,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f383e6a-bd35-4a61-9941-f41361241eb5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e01dad5-bbdb-4d4a-8316-e1e8e7b161e8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.1461515} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ec4218a70326ee57659ca3e1a910ab5e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615934,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNH0.MjCLQ_EtMH4ZYjZ7osnHsb4JqcgAyMX7-6SWDoKMp7A"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ec4218a70326ee57659ca3e1a910ab5e","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.614394,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d7e4d6d0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5","object_type":"device","rebac_allow":false,"scope_allow":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":"d7e4d6d0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0d5a207-d405-4240-9714-fa8884daf2cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0d5a207-d405-4240-9714-fa8884daf2cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:33.308949617Z"}]},"request_id":"54e8f5fa-ad60-49d2-a95d-16ca8a4ad4fd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.1500826} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7e4d6d0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ec4218a70326ee57659ca3e1a910ab5e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/3f383e6a-bd35-4a61-9941-f41361241eb5/signaling 200 10ms","method":"POST","requestID":"d7e4d6d0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/3f383e6a-bd35-4a61-9941-f41361241eb5/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"65e153e96df6b58bd890c47e7ef34601"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d7e6ab90-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d7e6d2a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ec4218a70326ee57659ca3e1a910ab5e"} gateway-1 | {"time_local":"02/Aug/2024:16:25:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a0d5a207-d405-4240-9714-fa8884daf2cd? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ec4218a70326ee57659ca3e1a910ab5e"} device-1 | {"level":"info","message":"GET /devices/a0d5a207-d405-4240-9714-fa8884daf2cd? 200 13ms","method":"GET","requestID":"ec4218a70326ee57659ca3e1a910ab5e","responseTime":13,"status":200,"url":"/devices/a0d5a207-d405-4240-9714-fa8884daf2cd?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.762922,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d7e6ab90-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615933,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d7e6ab90-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.750854,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d7e6d2a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615933,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d7e6d2a0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNH0.MjCLQ_EtMH4ZYjZ7osnHsb4JqcgAyMX7-6SWDoKMp7A","level":"info","message":"auth send jwt","requestID":"5f2f7aa495a93fcbe98c20d33fe9750a"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5f2f7aa495a93fcbe98c20d33fe9750a","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5f2f7aa495a93fcbe98c20d33fe9750a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0d5a207-d405-4240-9714-fa8884daf2cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0d5a207-d405-4240-9714-fa8884daf2cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:33.308949617Z"}]},"request_id":"51eba671-a6a3-4f86-84be-34efcdda564f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.161112} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d7e6ab90-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f383e6a-bd35-4a61-9941-f41361241eb5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f383e6a-bd35-4a61-9941-f41361241eb5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:33.352583384Z"}]},"request_id":"cebb1b98-db20-4796-9929-6bb75655b369","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.1620965} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d7e6d2a0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.616116,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"5f2f7aa495a93fcbe98c20d33fe9750a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615934,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNH0.MjCLQ_EtMH4ZYjZ7osnHsb4JqcgAyMX7-6SWDoKMp7A"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5f2f7aa495a93fcbe98c20d33fe9750a","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d7e6ab90-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/a0d5a207-d405-4240-9714-fa8884daf2cd? 200 13ms","method":"GET","requestID":"d7e6ab90-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/a0d5a207-d405-4240-9714-fa8884daf2cd?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d7e6d2a0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f383e6a-bd35-4a61-9941-f41361241eb5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f383e6a-bd35-4a61-9941-f41361241eb5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:33.352583384Z"}]},"request_id":"84c4af98-9fef-4d62-a924-71154a9c5d7a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.1696496} device-1 | {"level":"info","message":"GET /devices/3f383e6a-bd35-4a61-9941-f41361241eb5? 200 15ms","method":"GET","requestID":"d7e6d2a0-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/3f383e6a-bd35-4a61-9941-f41361241eb5?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5f2f7aa495a93fcbe98c20d33fe9750a","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06"},"level":"info","message":"Building connection plan","requestID":"65e153e96df6b58bd890c47e7ef34601"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"224afa2a-efd3-4f7e-8903-d63d9eb13883"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"35c90f2c-6c83-40bc-a190-43b8d6f7e405"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"2126c3aa-151b-4d38-a206-4460b1a9b4f3"}]},"level":"info","message":"Built pairwise service configurations","requestID":"65e153e96df6b58bd890c47e7ef34601"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"d7e991c0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"d7e991c0-50eb-11ef-a432-47ab85bb6d58"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5f2f7aa495a93fcbe98c20d33fe9750a"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"d7e991c0-50eb-11ef-a432-47ab85bb6d58","responseTime":1,"status":201,"url":"/rooms"} gateway-1 | {"time_local":"02/Aug/2024:16:25:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3f383e6a-bd35-4a61-9941-f41361241eb5? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5f2f7aa495a93fcbe98c20d33fe9750a"} device-1 | {"level":"info","message":"GET /devices/3f383e6a-bd35-4a61-9941-f41361241eb5? 200 12ms","method":"GET","requestID":"5f2f7aa495a93fcbe98c20d33fe9750a","responseTime":12,"status":200,"url":"/devices/3f383e6a-bd35-4a61-9941-f41361241eb5?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9?id=ad3242e7-fc80-4db8-b983-6ed09f97b76d","ws://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9?id=a5de9b55-0561-4f78-9ccf-0618acb4e9ff"]},"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"65e153e96df6b58bd890c47e7ef34601"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"d7ea06f0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.920995,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d7ea06f0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615933,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzM30.bLJTGjmmhS-8TI9C5Ffx2g7CKvrHVQ-VfAFeRihFSr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d7ea06f0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"8ad431d7-8e18-4192-94ee-02bdd366b0b0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.1873784} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8d02b76a-9263-46c9-b730-e2ab35e0b76c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.1875596} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"d7ea06f0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"d7ea06f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"d7ea06f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/7503e916-6089-4c4a-8f3a-0b38ae54e3fc'","requestID":"d7ea06f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/7503e916-6089-4c4a-8f3a-0b38ae54e3fc'","requestID":"d7ea06f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"d7ea06f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 24ms","method":"POST","requestID":"d7ea06f0-50eb-11ef-8434-2f6d198c7397","responseTime":24,"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":"d7ea06f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/7503e916-6089-4c4a-8f3a-0b38ae54e3fc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7503e916-6089-4c4a-8f3a-0b38ae54e3fc","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"d7ef1000-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a5de9b55-0561-4f78-9ccf-0618acb4e9ff\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\"","requestID":"d7ef1000-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"d7ef1000-50eb-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ec3692c8f26c50f0e45b28b2a796a0b9","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":"ec3692c8f26c50f0e45b28b2a796a0b9","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"d7ef3710-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\"","requestID":"d7ef3710-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"d7ef3710-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/7503e916-6089-4c4a-8f3a-0b38ae54e3fc"}}},"level":"info","message":"received a callback","requestID":"ec3692c8f26c50f0e45b28b2a796a0b9"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} device-1 | {"data":{"peerconnection":"7503e916-6089-4c4a-8f3a-0b38ae54e3fc","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 18ms","method":"POST","requestID":"ec3692c8f26c50f0e45b28b2a796a0b9","responseTime":18,"status":200,"url":"/callbacks/experiment"} device-1 | {"data":{"peerconnection":"7503e916-6089-4c4a-8f3a-0b38ae54e3fc","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"02/Aug/2024:16:25:34 +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":"ec3692c8f26c50f0e45b28b2a796a0b9"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/7503e916-6089-4c4a-8f3a-0b38ae54e3fc' to 'http://localhost/callbacks/experiment'"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} device-1 | {"data":{"peerconnection":"7503e916-6089-4c4a-8f3a-0b38ae54e3fc","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"65e153e96df6b58bd890c47e7ef34601"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7f578a0-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"eeb5d55338d865fb759203735734dfe7","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":"eeb5d55338d865fb759203735734dfe7","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/7503e916-6089-4c4a-8f3a-0b38ae54e3fc"}}},"level":"info","message":"received a callback","requestID":"eeb5d55338d865fb759203735734dfe7"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0d5a207-d405-4240-9714-fa8884daf2cd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"11d16934-7c01-4700-aee2-a6f281b1e03b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.2570686} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.385141,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d7f578a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd","object_type":"device","rebac_allow":false,"scope_allow":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":"d7f578a0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"d7f79b80-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7f578a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/a0d5a207-d405-4240-9714-fa8884daf2cd/signaling 200 16ms","method":"POST","requestID":"d7f578a0-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/a0d5a207-d405-4240-9714-fa8884daf2cd/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7f837c0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7503e916-6089-4c4a-8f3a-0b38ae54e3fc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9ffc7df3-5fcd-45a0-992b-bb134cc1d453","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.2688305} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.231442,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7503e916-6089-4c4a-8f3a-0b38ae54e3fc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d7f79b80-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/7503e916-6089-4c4a-8f3a-0b38ae54e3fc","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":"d7f79b80-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"d7f79b80-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} device-1 | {"level":"info","message":"GET /peerconnections/7503e916-6089-4c4a-8f3a-0b38ae54e3fc 200 8ms","method":"GET","requestID":"d7f79b80-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/peerconnections/7503e916-6089-4c4a-8f3a-0b38ae54e3fc"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f383e6a-bd35-4a61-9941-f41361241eb5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"288ec17e-6766-4597-ba52-293e77410751","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.273313} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.342204,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d7f837c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5","object_type":"device","rebac_allow":false,"scope_allow":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":"d7f837c0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7f837c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/3f383e6a-bd35-4a61-9941-f41361241eb5/signaling 200 9ms","method":"POST","requestID":"d7f837c0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/3f383e6a-bd35-4a61-9941-f41361241eb5/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 36ms","method":"POST","requestID":"eeb5d55338d865fb759203735734dfe7","responseTime":36,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7fb6c10-50eb-11ef-8434-2f6d198c7397"} gateway-1 | {"time_local":"02/Aug/2024:16:25:34 +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":"eeb5d55338d865fb759203735734dfe7"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f383e6a-bd35-4a61-9941-f41361241eb5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0a442dcc-efd5-4d4e-a1d8-e0f7493ba9b9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.2932642} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.173278,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d7fb6c10-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5","object_type":"device","rebac_allow":false,"scope_allow":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":"d7fb6c10-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7fb6c10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/3f383e6a-bd35-4a61-9941-f41361241eb5/signaling 200 8ms","method":"POST","requestID":"d7fb6c10-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/3f383e6a-bd35-4a61-9941-f41361241eb5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7fcf2b0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0d5a207-d405-4240-9714-fa8884daf2cd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"51a9c661-e534-4573-98c1-9f234d8c789e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.302864} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.069444,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d7fcf2b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd","object_type":"device","rebac_allow":false,"scope_allow":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":"d7fcf2b0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7fcf2b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/a0d5a207-d405-4240-9714-fa8884daf2cd/signaling 200 8ms","method":"POST","requestID":"d7fcf2b0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/a0d5a207-d405-4240-9714-fa8884daf2cd/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNH0.MjCLQ_EtMH4ZYjZ7osnHsb4JqcgAyMX7-6SWDoKMp7A","level":"info","message":"auth send jwt","requestID":"b826d75253986290bc0e8d0737d07f84"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b826d75253986290bc0e8d0737d07f84","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06","requestID":"b826d75253986290bc0e8d0737d07f84"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.214325,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b826d75253986290bc0e8d0737d07f84","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615934,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNH0.MjCLQ_EtMH4ZYjZ7osnHsb4JqcgAyMX7-6SWDoKMp7A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b826d75253986290bc0e8d0737d07f84","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06","requestID":"b826d75253986290bc0e8d0737d07f84"} gateway-1 | {"time_local":"02/Aug/2024:16:25:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06 HTTP/1.1","status": "200","body_bytes_sent":"859","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b826d75253986290bc0e8d0737d07f84"} experiment-1 | {"level":"info","message":"GET /experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06 200 16ms","method":"GET","requestID":"b826d75253986290bc0e8d0737d07f84","responseTime":16,"status":200,"url":"/experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNH0.MjCLQ_EtMH4ZYjZ7osnHsb4JqcgAyMX7-6SWDoKMp7A","level":"info","message":"auth send jwt","requestID":"57aaf7ac2896d0b6bbd4d9c2d2f1f07f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"57aaf7ac2896d0b6bbd4d9c2d2f1f07f","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06","requestID":"57aaf7ac2896d0b6bbd4d9c2d2f1f07f"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.191857,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"57aaf7ac2896d0b6bbd4d9c2d2f1f07f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615934,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNH0.MjCLQ_EtMH4ZYjZ7osnHsb4JqcgAyMX7-6SWDoKMp7A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"57aaf7ac2896d0b6bbd4d9c2d2f1f07f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06"},"level":"info","message":"Attempting to finish experiment","requestID":"57aaf7ac2896d0b6bbd4d9c2d2f1f07f"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"d8147250-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.296205,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7503e916-6089-4c4a-8f3a-0b38ae54e3fc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d8147250-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/7503e916-6089-4c4a-8f3a-0b38ae54e3fc","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615934,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNH0.MjCLQ_EtMH4ZYjZ7osnHsb4JqcgAyMX7-6SWDoKMp7A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d8147250-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:25:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9?id=ad3242e7-fc80-4db8-b983-6ed09f97b76d HTTP/1.1","status": "101","body_bytes_sent":"1203023","request_time":"0.262","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"f891b69138f2ade5604df890564b9586"} gateway-1 | {"time_local":"02/Aug/2024:16:25:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9?id=a5de9b55-0561-4f78-9ccf-0618acb4e9ff HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.262","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"efcdff10d33b71b257630a12c97ed296"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"ad3242e7-fc80-4db8-b983-6ed09f97b76d\" from room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"a5de9b55-0561-4f78-9ccf-0618acb4e9ff\" in room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"a5de9b55-0561-4f78-9ccf-0618acb4e9ff\" from room \"http://localhost/rooms/ebd027df-acd6-4012-bba4-68a12cf19cf9\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/7503e916-6089-4c4a-8f3a-0b38ae54e3fc' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/7503e916-6089-4c4a-8f3a-0b38ae54e3fc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7503e916-6089-4c4a-8f3a-0b38ae54e3fc","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ceee1b59ecd62aa451fb75dce44fe23f","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":"ceee1b59ecd62aa451fb75dce44fe23f","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e2cd5c6d7ff644d4194e16055a335c30","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":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7503e916-6089-4c4a-8f3a-0b38ae54e3fc': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7503e916-6089-4c4a-8f3a-0b38ae54e3fc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"ced296cc-0444-438d-a529-e5890f7a45b8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.4754102} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"e2cd5c6d7ff644d4194e16055a335c30","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/7503e916-6089-4c4a-8f3a-0b38ae54e3fc"}}},"level":"info","message":"received a callback","requestID":"ceee1b59ecd62aa451fb75dce44fe23f"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f73f5541-aade-4806-a221-b9576f6c63c2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.4757118} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5"},{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/7503e916-6089-4c4a-8f3a-0b38ae54e3fc"}}},"level":"info","message":"received a callback","requestID":"e2cd5c6d7ff644d4194e16055a335c30"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"d8147250-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"7503e916-6089-4c4a-8f3a-0b38ae54e3fc","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"d8147250-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/7503e916-6089-4c4a-8f3a-0b38ae54e3fc 204 44ms","method":"DELETE","requestID":"d8147250-50eb-11ef-8434-2f6d198c7397","responseTime":44,"status":204,"url":"/peerconnections/7503e916-6089-4c4a-8f3a-0b38ae54e3fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06"},"level":"info","message":"Successfully finished experiment","requestID":"57aaf7ac2896d0b6bbd4d9c2d2f1f07f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d81de830-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f383e6a-bd35-4a61-9941-f41361241eb5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0018f582-fffc-4164-8e2b-a931afbf3b8f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.522858} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.35136,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d81de830-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5","object_type":"device","rebac_allow":false,"scope_allow":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":"d81de830-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d81de830-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/3f383e6a-bd35-4a61-9941-f41361241eb5/signaling 200 14ms","method":"POST","requestID":"d81de830-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/3f383e6a-bd35-4a61-9941-f41361241eb5/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F76e366c3-4908-4c23-bda5-b97f5cc79d06': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F76e366c3-4908-4c23-bda5-b97f5cc79d06","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"30b05337-f21a-47b7-9c9a-660cb213dff4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.530307} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e2711839-0348-4d86-8764-9cbd9a0f05de","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.530656} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"57aaf7ac2896d0b6bbd4d9c2d2f1f07f","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d8208040-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0d5a207-d405-4240-9714-fa8884daf2cd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"410b440f-721c-4ec1-a205-d2a1ce89c338","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.5411909} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.219995,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d8208040-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a0d5a207-d405-4240-9714-fa8884daf2cd","object_type":"device","rebac_allow":false,"scope_allow":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":"d8208040-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d8208040-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/a0d5a207-d405-4240-9714-fa8884daf2cd/signaling 200 14ms","method":"POST","requestID":"d8208040-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/a0d5a207-d405-4240-9714-fa8884daf2cd/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06","requestID":"57aaf7ac2896d0b6bbd4d9c2d2f1f07f"} gateway-1 | {"time_local":"02/Aug/2024:16:25:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.159","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"57aaf7ac2896d0b6bbd4d9c2d2f1f07f"} gateway-1 | {"time_local":"02/Aug/2024:16:25:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1437","request_time":"0.686","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"3d743dc51969e04440e0788d6e614b77"} gateway-1 | {"time_local":"02/Aug/2024:16:25:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1438","request_time":"0.678","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"02b82fde0a5a07d8cd88cb9e5e51f96f"} experiment-1 | {"level":"info","message":"DELETE /experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06 204 156ms","method":"DELETE","requestID":"57aaf7ac2896d0b6bbd4d9c2d2f1f07f","responseTime":156,"status":204,"url":"/experiments/76e366c3-4908-4c23-bda5-b97f5cc79d06"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"ceee1b59ecd62aa451fb75dce44fe23f","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:34 +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.124","http_referrer":"","http_user_agent":"node-fetch","requestID":"ceee1b59ecd62aa451fb75dce44fe23f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNH0.MjCLQ_EtMH4ZYjZ7osnHsb4JqcgAyMX7-6SWDoKMp7A","level":"info","message":"auth send jwt","requestID":"a0fa9ab3cf47435b2793aa3a4a47cffc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"e2cd5c6d7ff644d4194e16055a335c30","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:34 +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":"e2cd5c6d7ff644d4194e16055a335c30"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a0fa9ab3cf47435b2793aa3a4a47cffc","responseTime":4,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/3f383e6a-bd35-4a61-9941-f41361241eb5' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"a0fa9ab3cf47435b2793aa3a4a47cffc"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.953789,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a0fa9ab3cf47435b2793aa3a4a47cffc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615934,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNH0.MjCLQ_EtMH4ZYjZ7osnHsb4JqcgAyMX7-6SWDoKMp7A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a0fa9ab3cf47435b2793aa3a4a47cffc","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/a0d5a207-d405-4240-9714-fa8884daf2cd' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff762c538-5612-4fe9-99ee-e5acf5d55d4e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bddea844-7c4a-4bf8-9b2d-8fe416f08e09","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.630638} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a0fa9ab3cf47435b2793aa3a4a47cffc","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d14c7353-5e40-4d70-b423-cfadbcf06af7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.63821} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"a0fa9ab3cf47435b2793aa3a4a47cffc","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff762c538-5612-4fe9-99ee-e5acf5d55d4e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"82abd8be-b803-4ca5-aa0c-b481cd56f4db","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.6468642} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e55ad81e-278f-4b27-9532-031089c21b1e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.647031} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"a0fa9ab3cf47435b2793aa3a4a47cffc","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff762c538-5612-4fe9-99ee-e5acf5d55d4e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff762c538-5612-4fe9-99ee-e5acf5d55d4e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:34.646840924Z"}]},"request_id":"55fbf1f7-9b18-4e6f-a603-c0ef45b14a8c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.6519086} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a0fa9ab3cf47435b2793aa3a4a47cffc","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a0fa9ab3cf47435b2793aa3a4a47cffc"} gateway-1 | {"time_local":"02/Aug/2024:16:25:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.060","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a0fa9ab3cf47435b2793aa3a4a47cffc"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"a0fa9ab3cf47435b2793aa3a4a47cffc","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNH0.MjCLQ_EtMH4ZYjZ7osnHsb4JqcgAyMX7-6SWDoKMp7A","level":"info","message":"auth send jwt","requestID":"b79f883f9787878815dbcb7914bd9194"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b79f883f9787878815dbcb7914bd9194","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b79f883f9787878815dbcb7914bd9194"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.964361,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b79f883f9787878815dbcb7914bd9194","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615934,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNH0.MjCLQ_EtMH4ZYjZ7osnHsb4JqcgAyMX7-6SWDoKMp7A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b79f883f9787878815dbcb7914bd9194","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6713b312-4be3-45e7-ad46-daddd3dce331","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e99303c2-e9c2-4d12-931d-81f67c0b53ba","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.6762025} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b79f883f9787878815dbcb7914bd9194","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6d33af9e-505b-4543-9c64-84be7a758d28","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.681328} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b79f883f9787878815dbcb7914bd9194","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6713b312-4be3-45e7-ad46-daddd3dce331","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"d1923f05-9349-4be5-a9fd-a7c91de1e85f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.6968706} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"42a9e95a-3adb-4751-a8f0-4ea91deef936","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.6970081} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"b79f883f9787878815dbcb7914bd9194","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6713b312-4be3-45e7-ad46-daddd3dce331","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6713b312-4be3-45e7-ad46-daddd3dce331","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:34.696840054Z"}]},"request_id":"34150768-3082-4078-90be-852e59608b29","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615934.7019296} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b79f883f9787878815dbcb7914bd9194","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b79f883f9787878815dbcb7914bd9194"} gateway-1 | {"time_local":"02/Aug/2024:16:25:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b79f883f9787878815dbcb7914bd9194"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"b79f883f9787878815dbcb7914bd9194","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"33bba8aa6e147612bbbc364a77452b8d","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":"33bba8aa6e147612bbbc364a77452b8d","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.002","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":"33bba8aa6e147612bbbc364a77452b8d"} device-1 | {"level":"info","message":"OPTIONS /devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e/websocket 200 0ms","method":"OPTIONS","requestID":"33bba8aa6e147612bbbc364a77452b8d","responseTime":0,"status":200,"url":"/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f7cb93a9847c001dbd8b1d09b5d42dad","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":"f7cb93a9847c001dbd8b1d09b5d42dad","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6713b312-4be3-45e7-ad46-daddd3dce331/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":"f7cb93a9847c001dbd8b1d09b5d42dad"} device-1 | {"level":"info","message":"OPTIONS /devices/6713b312-4be3-45e7-ad46-daddd3dce331/websocket 200 1ms","method":"OPTIONS","requestID":"f7cb93a9847c001dbd8b1d09b5d42dad","responseTime":1,"status":200,"url":"/devices/6713b312-4be3-45e7-ad46-daddd3dce331/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNn0.w0Z_zPdeAamYWwmnoBf3r3WEP6YrLzDxAEwOplb4198","level":"info","message":"auth send jwt","requestID":"ef9a357d487bb5b37d77522e27e3a7e0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ef9a357d487bb5b37d77522e27e3a7e0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ef9a357d487bb5b37d77522e27e3a7e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNn0.w0Z_zPdeAamYWwmnoBf3r3WEP6YrLzDxAEwOplb4198","level":"info","message":"auth send jwt","requestID":"8d2d38399ff654802809fcd14ab9533a"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8d2d38399ff654802809fcd14ab9533a","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:36Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.973386,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:36Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8d2d38399ff654802809fcd14ab9533a"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ef9a357d487bb5b37d77522e27e3a7e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615936,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNn0.w0Z_zPdeAamYWwmnoBf3r3WEP6YrLzDxAEwOplb4198"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ef9a357d487bb5b37d77522e27e3a7e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:36Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.246356,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:36Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"8d2d38399ff654802809fcd14ab9533a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615936,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNn0.w0Z_zPdeAamYWwmnoBf3r3WEP6YrLzDxAEwOplb4198"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8d2d38399ff654802809fcd14ab9533a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ef9a357d487bb5b37d77522e27e3a7e0"} gateway-1 | {"time_local":"02/Aug/2024:16:25:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e/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":"ef9a357d487bb5b37d77522e27e3a7e0"} device-1 | {"level":"info","message":"POST /devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e/websocket 200 26ms","method":"POST","requestID":"ef9a357d487bb5b37d77522e27e3a7e0","responseTime":26,"status":200,"url":"/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8d2d38399ff654802809fcd14ab9533a"} gateway-1 | {"time_local":"02/Aug/2024:16:25:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6713b312-4be3-45e7-ad46-daddd3dce331/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":"8d2d38399ff654802809fcd14ab9533a"} device-1 | {"level":"info","message":"POST /devices/6713b312-4be3-45e7-ad46-daddd3dce331/websocket 200 31ms","method":"POST","requestID":"8d2d38399ff654802809fcd14ab9533a","responseTime":31,"status":200,"url":"/devices/6713b312-4be3-45e7-ad46-daddd3dce331/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"02655c81cf9346be5c81842cbe1a6603","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":"02655c81cf9346be5c81842cbe1a6603","responseTime":0,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"02655c81cf9346be5c81842cbe1a6603"} device-1 | {"level":"info","message":"OPTIONS /devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e? 200 1ms","method":"OPTIONS","requestID":"02655c81cf9346be5c81842cbe1a6603","responseTime":1,"status":200,"url":"/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNn0.w0Z_zPdeAamYWwmnoBf3r3WEP6YrLzDxAEwOplb4198","level":"info","message":"auth send jwt","requestID":"211d156baa7c71891a2ebaf674542bd8"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"211d156baa7c71891a2ebaf674542bd8","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ef7241abefd6e7885fbc75e53c503460","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)"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"211d156baa7c71891a2ebaf674542bd8"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"ef7241abefd6e7885fbc75e53c503460","responseTime":0,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6713b312-4be3-45e7-ad46-daddd3dce331? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"ef7241abefd6e7885fbc75e53c503460"} device-1 | {"level":"info","message":"OPTIONS /devices/6713b312-4be3-45e7-ad46-daddd3dce331? 200 1ms","method":"OPTIONS","requestID":"ef7241abefd6e7885fbc75e53c503460","responseTime":1,"status":200,"url":"/devices/6713b312-4be3-45e7-ad46-daddd3dce331?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:36Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.091913,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:36Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"211d156baa7c71891a2ebaf674542bd8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615936,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNn0.w0Z_zPdeAamYWwmnoBf3r3WEP6YrLzDxAEwOplb4198"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"211d156baa7c71891a2ebaf674542bd8","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNn0.w0Z_zPdeAamYWwmnoBf3r3WEP6YrLzDxAEwOplb4198","level":"info","message":"auth send jwt","requestID":"7eed304b7a15dfde3d5c4e00f11e8fef"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7eed304b7a15dfde3d5c4e00f11e8fef","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"7eed304b7a15dfde3d5c4e00f11e8fef"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff762c538-5612-4fe9-99ee-e5acf5d55d4e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff762c538-5612-4fe9-99ee-e5acf5d55d4e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:34.646840924Z"}]},"request_id":"f672be8d-19cf-4643-87c5-68d233aeb65b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615936.77753} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"211d156baa7c71891a2ebaf674542bd8","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:36Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.987928,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:36Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"7eed304b7a15dfde3d5c4e00f11e8fef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615936,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNn0.w0Z_zPdeAamYWwmnoBf3r3WEP6YrLzDxAEwOplb4198"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7eed304b7a15dfde3d5c4e00f11e8fef","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3a5545cb-b0ad-444c-a527-dcc8cbc31bb0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615936.7830403} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"211d156baa7c71891a2ebaf674542bd8","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff762c538-5612-4fe9-99ee-e5acf5d55d4e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff762c538-5612-4fe9-99ee-e5acf5d55d4e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:34.646840924Z"}]},"request_id":"f463d4af-dc02-4ab1-9ac4-c80f4b2d19fa","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615936.7988062} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"211d156baa7c71891a2ebaf674542bd8","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6713b312-4be3-45e7-ad46-daddd3dce331","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6713b312-4be3-45e7-ad46-daddd3dce331","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:34.696840054Z"}]},"request_id":"227f5898-0792-4dcb-990f-4e30c05b132c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615936.8014646} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"211d156baa7c71891a2ebaf674542bd8"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7eed304b7a15dfde3d5c4e00f11e8fef","responseTime":3,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"02/Aug/2024:16:25:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.041","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":"211d156baa7c71891a2ebaf674542bd8"} device-1 | {"level":"info","message":"PATCH /devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e? 200 37ms","method":"PATCH","requestID":"211d156baa7c71891a2ebaf674542bd8","responseTime":37,"status":200,"url":"/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"73f241f3-4480-4e12-a29a-793d9a110945","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615936.8101695} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"7eed304b7a15dfde3d5c4e00f11e8fef","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6713b312-4be3-45e7-ad46-daddd3dce331","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6713b312-4be3-45e7-ad46-daddd3dce331","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:34.696840054Z"}]},"request_id":"90e5ef55-96ad-42b4-8809-50ab8637d5ae","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615936.8227007} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7eed304b7a15dfde3d5c4e00f11e8fef","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"7eed304b7a15dfde3d5c4e00f11e8fef"} device-1 | {"level":"info","message":"PATCH /devices/6713b312-4be3-45e7-ad46-daddd3dce331? 200 49ms","method":"PATCH","requestID":"7eed304b7a15dfde3d5c4e00f11e8fef","responseTime":49,"status":200,"url":"/devices/6713b312-4be3-45e7-ad46-daddd3dce331?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6713b312-4be3-45e7-ad46-daddd3dce331? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.054","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":"7eed304b7a15dfde3d5c4e00f11e8fef"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNn0.w0Z_zPdeAamYWwmnoBf3r3WEP6YrLzDxAEwOplb4198","level":"info","message":"auth send jwt","requestID":"e92b6199b98180d47f6961b72e6e697a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e92b6199b98180d47f6961b72e6e697a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e92b6199b98180d47f6961b72e6e697a"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:36Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.805072,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e92b6199b98180d47f6961b72e6e697a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615936,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNn0.w0Z_zPdeAamYWwmnoBf3r3WEP6YrLzDxAEwOplb4198"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e92b6199b98180d47f6961b72e6e697a","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff762c538-5612-4fe9-99ee-e5acf5d55d4e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff762c538-5612-4fe9-99ee-e5acf5d55d4e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:34.646840924Z"}]},"request_id":"7eed93a6-afb8-41c3-9a43-0f2582712b6d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615936.8451402} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e92b6199b98180d47f6961b72e6e697a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e92b6199b98180d47f6961b72e6e697a"} gateway-1 | {"time_local":"02/Aug/2024:16:25:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e92b6199b98180d47f6961b72e6e697a"} device-1 | {"level":"info","message":"GET /devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e? 200 14ms","method":"GET","requestID":"e92b6199b98180d47f6961b72e6e697a","responseTime":14,"status":200,"url":"/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNn0.w0Z_zPdeAamYWwmnoBf3r3WEP6YrLzDxAEwOplb4198","level":"info","message":"auth send jwt","requestID":"ade352403a3143da95fa0bf53db7702f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ade352403a3143da95fa0bf53db7702f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ade352403a3143da95fa0bf53db7702f"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:36Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.922336,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ade352403a3143da95fa0bf53db7702f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615936,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNn0.w0Z_zPdeAamYWwmnoBf3r3WEP6YrLzDxAEwOplb4198"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ade352403a3143da95fa0bf53db7702f","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6713b312-4be3-45e7-ad46-daddd3dce331","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6713b312-4be3-45e7-ad46-daddd3dce331","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:34.696840054Z"}]},"request_id":"47441e28-0dc2-4ba0-b6e3-30bd4978d683","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615936.8657138} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ade352403a3143da95fa0bf53db7702f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ade352403a3143da95fa0bf53db7702f"} gateway-1 | {"time_local":"02/Aug/2024:16:25:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6713b312-4be3-45e7-ad46-daddd3dce331? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ade352403a3143da95fa0bf53db7702f"} device-1 | {"level":"info","message":"GET /devices/6713b312-4be3-45e7-ad46-daddd3dce331? 200 16ms","method":"GET","requestID":"ade352403a3143da95fa0bf53db7702f","responseTime":16,"status":200,"url":"/devices/6713b312-4be3-45e7-ad46-daddd3dce331?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNn0.w0Z_zPdeAamYWwmnoBf3r3WEP6YrLzDxAEwOplb4198","level":"info","message":"auth send jwt","requestID":"7e90ea6c9f352bdd2a958d54e9529011"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7e90ea6c9f352bdd2a958d54e9529011","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"7e90ea6c9f352bdd2a958d54e9529011"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:36Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.219508,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"7e90ea6c9f352bdd2a958d54e9529011","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615936,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNn0.w0Z_zPdeAamYWwmnoBf3r3WEP6YrLzDxAEwOplb4198"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7e90ea6c9f352bdd2a958d54e9529011","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9"},"level":"info","message":"Attempting to run experiment","requestID":"7e90ea6c9f352bdd2a958d54e9529011"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9"},"level":"info","message":"Attempting to book experiment","requestID":"7e90ea6c9f352bdd2a958d54e9529011"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9"},"level":"info","message":"Successfully booked experiment","requestID":"7e90ea6c9f352bdd2a958d54e9529011"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d98d7dc0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d98dcbe0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:36Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.079463,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d98d7dc0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615936,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNn0.w0Z_zPdeAamYWwmnoBf3r3WEP6YrLzDxAEwOplb4198"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d98d7dc0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:36Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.822105,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d98dcbe0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615936,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNn0.w0Z_zPdeAamYWwmnoBf3r3WEP6YrLzDxAEwOplb4198"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d98dcbe0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff762c538-5612-4fe9-99ee-e5acf5d55d4e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff762c538-5612-4fe9-99ee-e5acf5d55d4e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:34.646840924Z"}]},"request_id":"3297ae1f-5ea4-4bdc-8587-d22bedb99708","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615936.9356265} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d98d7dc0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6713b312-4be3-45e7-ad46-daddd3dce331","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6713b312-4be3-45e7-ad46-daddd3dce331","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:34.696840054Z"}]},"request_id":"3b35813a-6e22-464f-97b1-e251b44b95d5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615936.937282} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d98dcbe0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d98d7dc0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e? 200 21ms","method":"GET","requestID":"d98d7dc0-50eb-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d98dcbe0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/6713b312-4be3-45e7-ad46-daddd3dce331? 200 20ms","method":"GET","requestID":"d98dcbe0-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/6713b312-4be3-45e7-ad46-daddd3dce331?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9"},"level":"info","message":"Setting up experiment","requestID":"7e90ea6c9f352bdd2a958d54e9529011"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"7e90ea6c9f352bdd2a958d54e9529011"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9"},"level":"info","message":"Successfully locked booking for experiment","requestID":"7e90ea6c9f352bdd2a958d54e9529011"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"7e90ea6c9f352bdd2a958d54e9529011"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"7e90ea6c9f352bdd2a958d54e9529011"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9"},"level":"info","message":"Attempting to update booking for experiment","requestID":"7e90ea6c9f352bdd2a958d54e9529011"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9"},"level":"info","message":"Successfully updated booking for experiment","requestID":"7e90ea6c9f352bdd2a958d54e9529011"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9"},"level":"info","message":"Successfully set up experiment","requestID":"7e90ea6c9f352bdd2a958d54e9529011"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d99a7610-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d99ac430-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9"},"level":"info","message":"Successfully running experiment","requestID":"7e90ea6c9f352bdd2a958d54e9529011"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d99aeb40-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.633364,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d99a7610-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615936,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNn0.w0Z_zPdeAamYWwmnoBf3r3WEP6YrLzDxAEwOplb4198"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d99a7610-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.860442,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d99ac430-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615936,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNn0.w0Z_zPdeAamYWwmnoBf3r3WEP6YrLzDxAEwOplb4198"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d99ac430-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff762c538-5612-4fe9-99ee-e5acf5d55d4e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9a9f9b8c-2ca7-4247-abdd-4e4284f9e74b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.0208397} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.600703,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d99aeb40-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e","object_type":"device","rebac_allow":false,"scope_allow":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":"d99aeb40-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff762c538-5612-4fe9-99ee-e5acf5d55d4e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff762c538-5612-4fe9-99ee-e5acf5d55d4e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:34.646840924Z"}]},"request_id":"a4408389-9bf6-42ab-9530-795f40f8b554","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.023909} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6713b312-4be3-45e7-ad46-daddd3dce331","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6713b312-4be3-45e7-ad46-daddd3dce331","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:34.696840054Z"}]},"request_id":"992a3ca1-642a-408a-ac50-89dca0d614d8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.0263066} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"d99a7610-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d99aeb40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e/signaling 200 22ms","method":"POST","requestID":"d99aeb40-50eb-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 11ms","method":"POST","requestID":"d99ac430-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d99a7610-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e? 200 29ms","method":"GET","requestID":"d99a7610-50eb-11ef-8434-2f6d198c7397","responseTime":29,"status":200,"url":"/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d99ee2e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d99ac430-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5fa6e33e-72cb-4662-97a6-a91ea701d8a9#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5fa6e33e-72cb-4662-97a6-a91ea701d8a9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"742c4e19-fe10-43b7-9da0-8288afd5b698","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.040441} device-1 | {"level":"info","message":"GET /devices/6713b312-4be3-45e7-ad46-daddd3dce331? 200 31ms","method":"GET","requestID":"d99ac430-50eb-11ef-8434-2f6d198c7397","responseTime":31,"status":200,"url":"/devices/6713b312-4be3-45e7-ad46-daddd3dce331?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"df36a1fc-0d27-48a7-8507-4a410ff7063b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.040875} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"7e90ea6c9f352bdd2a958d54e9529011","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6713b312-4be3-45e7-ad46-daddd3dce331","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6632146c-715f-4def-8a53-161efb813570","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.0450265} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:37Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d99ff450-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.297256,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d99ee2e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331","object_type":"device","rebac_allow":false,"scope_allow":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":"d99ee2e0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:37Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d99ee2e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/6713b312-4be3-45e7-ad46-daddd3dce331/signaling 200 13ms","method":"POST","requestID":"d99ee2e0-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/6713b312-4be3-45e7-ad46-daddd3dce331/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff762c538-5612-4fe9-99ee-e5acf5d55d4e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f8464eb7-65fa-4359-bc96-1b61cc1c9675","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.0517519} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.293757,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d99ff450-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e","object_type":"device","rebac_allow":false,"scope_allow":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":"d99ff450-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"7e90ea6c9f352bdd2a958d54e9529011"} gateway-1 | {"time_local":"02/Aug/2024:16:25:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1288","request_time":"0.182","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7e90ea6c9f352bdd2a958d54e9529011"} experiment-1 | {"level":"info","message":"POST /experiments? 201 178ms","method":"POST","requestID":"7e90ea6c9f352bdd2a958d54e9529011","responseTime":179,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d99ff450-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e/signaling 200 13ms","method":"POST","requestID":"d99ff450-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d9a26550-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzN30.e5NMgAHLNM0zoQ8Jyk-r10HL2D6NbX8zzSnHTBQBwzM","level":"info","message":"auth send jwt","requestID":"21a7b097cfae03338ac1d670ebbe7baa"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"21a7b097cfae03338ac1d670ebbe7baa","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"21a7b097cfae03338ac1d670ebbe7baa"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6713b312-4be3-45e7-ad46-daddd3dce331","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ab5c6ae2-a9f5-4f9e-825f-2f330daa6313","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.0660605} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.857313,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.229048,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"21a7b097cfae03338ac1d670ebbe7baa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615937,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzN30.e5NMgAHLNM0zoQ8Jyk-r10HL2D6NbX8zzSnHTBQBwzM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"21a7b097cfae03338ac1d670ebbe7baa","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d9a26550-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331","object_type":"device","rebac_allow":false,"scope_allow":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":"d9a26550-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d9a26550-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff762c538-5612-4fe9-99ee-e5acf5d55d4e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff762c538-5612-4fe9-99ee-e5acf5d55d4e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:34.646840924Z"}]},"request_id":"3df1ea82-4041-4627-bd2f-024169079345","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.0716588} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"21a7b097cfae03338ac1d670ebbe7baa","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/6713b312-4be3-45e7-ad46-daddd3dce331/signaling 200 12ms","method":"POST","requestID":"d9a26550-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/6713b312-4be3-45e7-ad46-daddd3dce331/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"7e90ea6c9f352bdd2a958d54e9529011"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d9a48830-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d9a4af40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"21a7b097cfae03338ac1d670ebbe7baa"} gateway-1 | {"time_local":"02/Aug/2024:16:25:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"21a7b097cfae03338ac1d670ebbe7baa"} device-1 | {"level":"info","message":"GET /devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e? 200 15ms","method":"GET","requestID":"21a7b097cfae03338ac1d670ebbe7baa","responseTime":15,"status":200,"url":"/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.964494,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d9a48830-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615936,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNn0.w0Z_zPdeAamYWwmnoBf3r3WEP6YrLzDxAEwOplb4198"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d9a48830-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.78539,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d9a4af40-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615936,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNn0.w0Z_zPdeAamYWwmnoBf3r3WEP6YrLzDxAEwOplb4198"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d9a4af40-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzN30.e5NMgAHLNM0zoQ8Jyk-r10HL2D6NbX8zzSnHTBQBwzM","level":"info","message":"auth send jwt","requestID":"af625c51945b5862c01ffbbef92d4ed7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"af625c51945b5862c01ffbbef92d4ed7","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff762c538-5612-4fe9-99ee-e5acf5d55d4e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff762c538-5612-4fe9-99ee-e5acf5d55d4e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:34.646840924Z"}]},"request_id":"767bc766-348a-4d81-870a-7d3087d29119","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.0827866} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"af625c51945b5862c01ffbbef92d4ed7"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d9a48830-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6713b312-4be3-45e7-ad46-daddd3dce331","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6713b312-4be3-45e7-ad46-daddd3dce331","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:34.696840054Z"}]},"request_id":"817a2102-34b0-4334-b6fe-45bf412d1d64","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.084005} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d9a4af40-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.688394,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"af625c51945b5862c01ffbbef92d4ed7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615937,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzN30.e5NMgAHLNM0zoQ8Jyk-r10HL2D6NbX8zzSnHTBQBwzM"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d9a48830-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"af625c51945b5862c01ffbbef92d4ed7","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e? 200 13ms","method":"GET","requestID":"d9a48830-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d9a4af40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/6713b312-4be3-45e7-ad46-daddd3dce331? 200 12ms","method":"GET","requestID":"d9a4af40-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/6713b312-4be3-45e7-ad46-daddd3dce331?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9"},"level":"info","message":"Building connection plan","requestID":"7e90ea6c9f352bdd2a958d54e9529011"} 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":"0c075611-9f6c-451d-9afd-061a1063d101"},{"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":"9de2ac07-d148-4cde-bac6-651226401746"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"9e5e387a-a13b-4ab3-bf83-858e4e8f9df9"}]},"level":"info","message":"Built pairwise service configurations","requestID":"7e90ea6c9f352bdd2a958d54e9529011"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"7e90ea6c9f352bdd2a958d54e9529011"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6713b312-4be3-45e7-ad46-daddd3dce331","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6713b312-4be3-45e7-ad46-daddd3dce331","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:34.696840054Z"}]},"request_id":"09271dd5-4814-4571-af8d-d80e69d15897","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.0915823} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"d9a72040-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"af625c51945b5862c01ffbbef92d4ed7","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:37Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"af625c51945b5862c01ffbbef92d4ed7"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.945647,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:37Z"} gateway-1 | {"time_local":"02/Aug/2024:16:25:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6713b312-4be3-45e7-ad46-daddd3dce331? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"af625c51945b5862c01ffbbef92d4ed7"} device-1 | {"level":"info","message":"GET /devices/6713b312-4be3-45e7-ad46-daddd3dce331? 200 12ms","method":"GET","requestID":"af625c51945b5862c01ffbbef92d4ed7","responseTime":12,"status":200,"url":"/devices/6713b312-4be3-45e7-ad46-daddd3dce331?"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d9a72040-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615936,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzNn0.w0Z_zPdeAamYWwmnoBf3r3WEP6YrLzDxAEwOplb4198"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d9a72040-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"8e5f9ec7-c549-4acf-b415-1ceaf84edfb0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.1026766} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ef4214cc-e2cf-464e-9993-e9c554676ece","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.1028948} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"d9a72040-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"d9a72040-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"d9a72040-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/8dc5ae83-cc03-4f23-9345-78f08b9a22cc'","requestID":"d9a72040-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/8dc5ae83-cc03-4f23-9345-78f08b9a22cc'","requestID":"d9a72040-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"d9a72040-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"d9a72040-50eb-11ef-8434-2f6d198c7397","responseTime":23,"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":"d9a72040-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"7e90ea6c9f352bdd2a958d54e9529011"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d9aec160-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff762c538-5612-4fe9-99ee-e5acf5d55d4e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"10ad6437-d40b-490f-bc73-c9aaa3398fd1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.1471403} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.398542,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d9aec160-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e","object_type":"device","rebac_allow":false,"scope_allow":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":"d9aec160-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d9aec160-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e/signaling 200 9ms","method":"POST","requestID":"d9aec160-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e/signaling"} device-1 | {"device":"6713b312-4be3-45e7-ad46-daddd3dce331","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"6713b312-4be3-45e7-ad46-daddd3dce331","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d9b09620-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6713b312-4be3-45e7-ad46-daddd3dce331","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"40035651-d25f-4bf1-b9a6-4669b282097a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.1596239} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.995719,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d9b09620-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331","object_type":"device","rebac_allow":false,"scope_allow":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":"d9b09620-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d9b09620-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/6713b312-4be3-45e7-ad46-daddd3dce331/signaling 200 9ms","method":"POST","requestID":"d9b09620-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/6713b312-4be3-45e7-ad46-daddd3dce331/signaling"} device-1 | {"device":"f762c538-5612-4fe9-99ee-e5acf5d55d4e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"f762c538-5612-4fe9-99ee-e5acf5d55d4e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 1712517290178234359 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:PjGg\r\na=ice-pwd:bXTJwuVxpGdAO4jzlhSftjyp\r\na=ice-options:trickle\r\na=fingerprint:sha-256 FB:E1:CD:F8:42:F0:2F:4C:34:62:62:C2:6A:C5:24:CD:9A:BE:06:BE:E4:A9:42:9F:9E:49:1D:F9:BA:91:35:98\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"f762c538-5612-4fe9-99ee-e5acf5d55d4e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 6342690334195255256 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:Qjh3\r\na=ice-pwd:S49rFHVxgCHqa35RhoPVzr4t\r\na=ice-options:trickle\r\na=fingerprint:sha-256 0E:D5:A4:9F:14:B7:7E:CB:EE:C3:C1:F3:FA:C4:BA:F9:B7:A4:7C:85:7B:55:1D:19:BA:F0:D9:DF:8F:74:5A:AC\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"6713b312-4be3-45e7-ad46-daddd3dce331","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2693369187 1 udp 2113937151 54a54195-9f9c-4ed0-a862-c2aa3fe14d54.local 43819 typ host generation 0 ufrag Qjh3 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6713b312-4be3-45e7-ad46-daddd3dce331","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2776728123 1 udp 1677729535 141.24.211.56 43819 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag Qjh3 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6713b312-4be3-45e7-ad46-daddd3dce331","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331'"} device-1 | {"content":{"candidate":"candidate:1961884701 1 udp 2113937151 f9fe628f-3dee-4568-807a-9ad6b6737453.local 55145 typ host generation 0 ufrag PjGg network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f762c538-5612-4fe9-99ee-e5acf5d55d4e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2092414938 1 udp 1677729535 141.24.211.56 55145 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag PjGg network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f762c538-5612-4fe9-99ee-e5acf5d55d4e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e'"} device-1 | {"device":"f762c538-5612-4fe9-99ee-e5acf5d55d4e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"6713b312-4be3-45e7-ad46-daddd3dce331","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8dc5ae83-cc03-4f23-9345-78f08b9a22cc' to 'http://localhost/callbacks/experiment'"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e064a1d2ed2b2e49fc644dd5e642173f","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":"e064a1d2ed2b2e49fc644dd5e642173f","responseTime":1,"status":200,"url":"/auth"} device-1 | {"data":{"peerconnection":"8dc5ae83-cc03-4f23-9345-78f08b9a22cc","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"f762c538-5612-4fe9-99ee-e5acf5d55d4e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"6713b312-4be3-45e7-ad46-daddd3dce331","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/8dc5ae83-cc03-4f23-9345-78f08b9a22cc"}}},"level":"info","message":"received a callback","requestID":"e064a1d2ed2b2e49fc644dd5e642173f"} device-1 | {"device":"6713b312-4be3-45e7-ad46-daddd3dce331","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"f762c538-5612-4fe9-99ee-e5acf5d55d4e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"e064a1d2ed2b2e49fc644dd5e642173f","responseTime":4,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:37 +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":"e064a1d2ed2b2e49fc644dd5e642173f"} device-1 | {"device":"6713b312-4be3-45e7-ad46-daddd3dce331","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"8dc5ae83-cc03-4f23-9345-78f08b9a22cc","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"8dc5ae83-cc03-4f23-9345-78f08b9a22cc","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/8dc5ae83-cc03-4f23-9345-78f08b9a22cc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8dc5ae83-cc03-4f23-9345-78f08b9a22cc","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ced10b071cdae95ddc943c25abfac14c","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":"ced10b071cdae95ddc943c25abfac14c","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/8dc5ae83-cc03-4f23-9345-78f08b9a22cc"}}},"level":"info","message":"received a callback","requestID":"ced10b071cdae95ddc943c25abfac14c"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"d9bc7d00-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8dc5ae83-cc03-4f23-9345-78f08b9a22cc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6fb8f5bd-b7c4-4736-901c-2c8a72807279","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.2367022} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.180224,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8dc5ae83-cc03-4f23-9345-78f08b9a22cc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d9bc7d00-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/8dc5ae83-cc03-4f23-9345-78f08b9a22cc","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":"d9bc7d00-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"d9bc7d00-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/8dc5ae83-cc03-4f23-9345-78f08b9a22cc 200 7ms","method":"GET","requestID":"d9bc7d00-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/peerconnections/8dc5ae83-cc03-4f23-9345-78f08b9a22cc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"ced10b071cdae95ddc943c25abfac14c","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:37 +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":"ced10b071cdae95ddc943c25abfac14c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d9c0c2c0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6713b312-4be3-45e7-ad46-daddd3dce331","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8cb14a44-81ef-49a8-a953-dfdc3cd3dffd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.2644873} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":1.992409,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d9c0c2c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331","object_type":"device","rebac_allow":false,"scope_allow":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":"d9c0c2c0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d9c0c2c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/6713b312-4be3-45e7-ad46-daddd3dce331/signaling 200 8ms","method":"POST","requestID":"d9c0c2c0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/6713b312-4be3-45e7-ad46-daddd3dce331/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d9c24960-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff762c538-5612-4fe9-99ee-e5acf5d55d4e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c6ad6acb-a279-44d8-b9b3-e8e087767f29","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.2738953} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.011142,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d9c24960-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e","object_type":"device","rebac_allow":false,"scope_allow":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":"d9c24960-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d9c24960-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e/signaling 200 7ms","method":"POST","requestID":"d9c24960-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzN30.e5NMgAHLNM0zoQ8Jyk-r10HL2D6NbX8zzSnHTBQBwzM","level":"info","message":"auth send jwt","requestID":"8f479b3be56eab8ec472c0a8f70b0892"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8f479b3be56eab8ec472c0a8f70b0892","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9","requestID":"8f479b3be56eab8ec472c0a8f70b0892"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.266125,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"8f479b3be56eab8ec472c0a8f70b0892","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615937,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzN30.e5NMgAHLNM0zoQ8Jyk-r10HL2D6NbX8zzSnHTBQBwzM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8f479b3be56eab8ec472c0a8f70b0892","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9","requestID":"8f479b3be56eab8ec472c0a8f70b0892"} experiment-1 | {"level":"info","message":"GET /experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9 200 15ms","method":"GET","requestID":"8f479b3be56eab8ec472c0a8f70b0892","responseTime":15,"status":200,"url":"/experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9"} gateway-1 | {"time_local":"02/Aug/2024:16:25:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9 HTTP/1.1","status": "200","body_bytes_sent":"1361","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8f479b3be56eab8ec472c0a8f70b0892"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzN30.e5NMgAHLNM0zoQ8Jyk-r10HL2D6NbX8zzSnHTBQBwzM","level":"info","message":"auth send jwt","requestID":"2782514eece60f8a0f33c76ee1b9d4ba"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2782514eece60f8a0f33c76ee1b9d4ba","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9","requestID":"2782514eece60f8a0f33c76ee1b9d4ba"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.232529,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"2782514eece60f8a0f33c76ee1b9d4ba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615937,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzN30.e5NMgAHLNM0zoQ8Jyk-r10HL2D6NbX8zzSnHTBQBwzM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2782514eece60f8a0f33c76ee1b9d4ba","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9"},"level":"info","message":"Attempting to finish experiment","requestID":"2782514eece60f8a0f33c76ee1b9d4ba"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"d9cf1aa0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.286425,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8dc5ae83-cc03-4f23-9345-78f08b9a22cc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d9cf1aa0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/8dc5ae83-cc03-4f23-9345-78f08b9a22cc","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615937,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzN30.e5NMgAHLNM0zoQ8Jyk-r10HL2D6NbX8zzSnHTBQBwzM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d9cf1aa0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/8dc5ae83-cc03-4f23-9345-78f08b9a22cc","device":"6713b312-4be3-45e7-ad46-daddd3dce331","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/8dc5ae83-cc03-4f23-9345-78f08b9a22cc","device":"f762c538-5612-4fe9-99ee-e5acf5d55d4e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8dc5ae83-cc03-4f23-9345-78f08b9a22cc' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/8dc5ae83-cc03-4f23-9345-78f08b9a22cc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8dc5ae83-cc03-4f23-9345-78f08b9a22cc","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8dc5ae83-cc03-4f23-9345-78f08b9a22cc': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8dc5ae83-cc03-4f23-9345-78f08b9a22cc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"46f6b940-4b0a-434b-91a5-ce0161ba1704","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.3803363} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d7fa2231ba725aa5369bf46e8dd25432","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6ab84f11-d7b5-400b-bfbe-ce84726a29f1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.3809872} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d7fa2231ba725aa5369bf46e8dd25432","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"d9cf1aa0-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6068ad3d0e6fd140ec73661deca22fa7","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/8dc5ae83-cc03-4f23-9345-78f08b9a22cc"}}},"level":"info","message":"received a callback","requestID":"d7fa2231ba725aa5369bf46e8dd25432"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6068ad3d0e6fd140ec73661deca22fa7","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/8dc5ae83-cc03-4f23-9345-78f08b9a22cc"}}},"level":"info","message":"received a callback","requestID":"6068ad3d0e6fd140ec73661deca22fa7"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"d9cf1aa0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/8dc5ae83-cc03-4f23-9345-78f08b9a22cc 204 49ms","method":"DELETE","requestID":"d9cf1aa0-50eb-11ef-8434-2f6d198c7397","responseTime":49,"status":204,"url":"/peerconnections/8dc5ae83-cc03-4f23-9345-78f08b9a22cc"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9"},"level":"info","message":"Successfully finished experiment","requestID":"2782514eece60f8a0f33c76ee1b9d4ba"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d9d9f010-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6713b312-4be3-45e7-ad46-daddd3dce331","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"67255310-9298-4cf7-ae4a-7ae820228e9c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.4336374} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.278014,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d9d9f010-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6713b312-4be3-45e7-ad46-daddd3dce331","object_type":"device","rebac_allow":false,"scope_allow":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":"d9d9f010-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5fa6e33e-72cb-4662-97a6-a91ea701d8a9': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5fa6e33e-72cb-4662-97a6-a91ea701d8a9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"28f2c59a-5af5-45c0-9158-9d910f6c5ac1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.4401212} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5ec1db01-8ec7-49e9-b855-359560573382","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.4405327} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d9d9f010-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/6713b312-4be3-45e7-ad46-daddd3dce331/signaling 200 16ms","method":"POST","requestID":"d9d9f010-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/6713b312-4be3-45e7-ad46-daddd3dce331/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"2782514eece60f8a0f33c76ee1b9d4ba","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d9dcfd50-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff762c538-5612-4fe9-99ee-e5acf5d55d4e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1cf8b6eb-d287-4b1c-b69a-e3054691f612","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.4521542} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.652551,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d9dcfd50-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e","object_type":"device","rebac_allow":false,"scope_allow":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":"d9dcfd50-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d9dcfd50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e/signaling 200 14ms","method":"POST","requestID":"d9dcfd50-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/f762c538-5612-4fe9-99ee-e5acf5d55d4e/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9","requestID":"2782514eece60f8a0f33c76ee1b9d4ba"} gateway-1 | {"time_local":"02/Aug/2024:16:25:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9 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":"2782514eece60f8a0f33c76ee1b9d4ba"} experiment-1 | {"level":"info","message":"DELETE /experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9 204 177ms","method":"DELETE","requestID":"2782514eece60f8a0f33c76ee1b9d4ba","responseTime":177,"status":204,"url":"/experiments/5fa6e33e-72cb-4662-97a6-a91ea701d8a9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 136ms","method":"POST","requestID":"d7fa2231ba725aa5369bf46e8dd25432","responseTime":136,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:37 +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":"d7fa2231ba725aa5369bf46e8dd25432"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 135ms","method":"POST","requestID":"6068ad3d0e6fd140ec73661deca22fa7","responseTime":135,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:37 +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":"6068ad3d0e6fd140ec73661deca22fa7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzN30.e5NMgAHLNM0zoQ8Jyk-r10HL2D6NbX8zzSnHTBQBwzM","level":"info","message":"auth send jwt","requestID":"f56fede88c0b1587efe7396c7957b4d1"} device-1 | {"level":"info","message":"postDevices called","requestID":"f56fede88c0b1587efe7396c7957b4d1"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f56fede88c0b1587efe7396c7957b4d1","responseTime":5,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3318","request_time":"0.790","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":"e41f771c5a8cf7508770b3fd69ee07d2"} gateway-1 | {"time_local":"02/Aug/2024:16:25:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3320","request_time":"0.799","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":"8c0e30e6ea5a7f88f075d35525a1bb0d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.787048,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f56fede88c0b1587efe7396c7957b4d1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615937,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzN30.e5NMgAHLNM0zoQ8Jyk-r10HL2D6NbX8zzSnHTBQBwzM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f56fede88c0b1587efe7396c7957b4d1","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/f762c538-5612-4fe9-99ee-e5acf5d55d4e' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619532e6-600d-45a9-a1e7-2d63e7ef0c6f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"53027b5f-e3ee-4169-9efe-0185f0d8e3ce","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.5417113} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f56fede88c0b1587efe7396c7957b4d1","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/6713b312-4be3-45e7-ad46-daddd3dce331' 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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2846eb2a-8b52-4526-85e2-a77477f144db","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.5471053} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f56fede88c0b1587efe7396c7957b4d1","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619532e6-600d-45a9-a1e7-2d63e7ef0c6f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"c4dc5cc2-7a47-4d3b-8ace-bb946de35a47","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.5572581} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"37e5a4b6-b330-4815-9d79-4f07ca1f550f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.5574658} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"f56fede88c0b1587efe7396c7957b4d1","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619532e6-600d-45a9-a1e7-2d63e7ef0c6f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619532e6-600d-45a9-a1e7-2d63e7ef0c6f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:37.557222827Z"}]},"request_id":"6810a8e5-1ec5-48d6-9257-c8636533933b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.561952} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f56fede88c0b1587efe7396c7957b4d1","responseTime":3,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"02/Aug/2024:16:25:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f56fede88c0b1587efe7396c7957b4d1"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f56fede88c0b1587efe7396c7957b4d1"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"f56fede88c0b1587efe7396c7957b4d1","responseTime":39,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzN30.e5NMgAHLNM0zoQ8Jyk-r10HL2D6NbX8zzSnHTBQBwzM","level":"info","message":"auth send jwt","requestID":"038ba83215149ea32f800ee35f90f8a0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"038ba83215149ea32f800ee35f90f8a0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"038ba83215149ea32f800ee35f90f8a0"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.49246,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"038ba83215149ea32f800ee35f90f8a0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615937,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzN30.e5NMgAHLNM0zoQ8Jyk-r10HL2D6NbX8zzSnHTBQBwzM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"038ba83215149ea32f800ee35f90f8a0","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea05aee-301c-49eb-b728-53a033e4f8c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d15fe079-b277-4225-9a33-33d2f0f402e7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.5862048} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"038ba83215149ea32f800ee35f90f8a0","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"42dd99ee-d5b9-423f-8b9b-635fccf2b0a4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.5907848} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"038ba83215149ea32f800ee35f90f8a0","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea05aee-301c-49eb-b728-53a033e4f8c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"14647337-d574-49b5-b0cf-f8ff1a9271aa","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.6057951} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2811112e-a4db-43d5-949f-cce0351ba19a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.6060843} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"038ba83215149ea32f800ee35f90f8a0","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea05aee-301c-49eb-b728-53a033e4f8c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea05aee-301c-49eb-b728-53a033e4f8c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:37.605761353Z"}]},"request_id":"251d1035-911e-4eb5-aeff-94ed6414c9ca","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615937.610184} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"038ba83215149ea32f800ee35f90f8a0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"038ba83215149ea32f800ee35f90f8a0"} gateway-1 | {"time_local":"02/Aug/2024:16:25:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"038ba83215149ea32f800ee35f90f8a0"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"038ba83215149ea32f800ee35f90f8a0","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"aa672f56ff623665d8ba88e04b114b26","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":"aa672f56ff623665d8ba88e04b114b26","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8ea05aee-301c-49eb-b728-53a033e4f8c2/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":"aa672f56ff623665d8ba88e04b114b26"} device-1 | {"level":"info","message":"OPTIONS /devices/8ea05aee-301c-49eb-b728-53a033e4f8c2/websocket 200 1ms","method":"OPTIONS","requestID":"aa672f56ff623665d8ba88e04b114b26","responseTime":1,"status":200,"url":"/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3ea7d8a77e8db8c9a0174e1bc3285218","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":"3ea7d8a77e8db8c9a0174e1bc3285218","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f/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":"3ea7d8a77e8db8c9a0174e1bc3285218"} device-1 | {"level":"info","message":"OPTIONS /devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f/websocket 200 2ms","method":"OPTIONS","requestID":"3ea7d8a77e8db8c9a0174e1bc3285218","responseTime":2,"status":200,"url":"/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w","level":"info","message":"auth send jwt","requestID":"2e856271b0c0550fcf44948c8caca542"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2e856271b0c0550fcf44948c8caca542","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2e856271b0c0550fcf44948c8caca542"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w","level":"info","message":"auth send jwt","requestID":"2e97872bdf2fdc36c574cc70aa0497fe"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2e97872bdf2fdc36c574cc70aa0497fe","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.722205,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:39Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2e97872bdf2fdc36c574cc70aa0497fe"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"2e856271b0c0550fcf44948c8caca542","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615939,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2e856271b0c0550fcf44948c8caca542","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.813493,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"2e97872bdf2fdc36c574cc70aa0497fe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615939,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2e97872bdf2fdc36c574cc70aa0497fe","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2e856271b0c0550fcf44948c8caca542"} device-1 | {"level":"info","message":"POST /devices/8ea05aee-301c-49eb-b728-53a033e4f8c2/websocket 200 25ms","method":"POST","requestID":"2e856271b0c0550fcf44948c8caca542","responseTime":25,"status":200,"url":"/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:25:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8ea05aee-301c-49eb-b728-53a033e4f8c2/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":"2e856271b0c0550fcf44948c8caca542"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2e97872bdf2fdc36c574cc70aa0497fe"} gateway-1 | {"time_local":"02/Aug/2024:16:25:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f/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":"2e97872bdf2fdc36c574cc70aa0497fe"} device-1 | {"level":"info","message":"POST /devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f/websocket 200 32ms","method":"POST","requestID":"2e97872bdf2fdc36c574cc70aa0497fe","responseTime":32,"status":200,"url":"/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"32e0e8953592a86cf0fa97371ac8610d","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":"32e0e8953592a86cf0fa97371ac8610d","responseTime":0,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8ea05aee-301c-49eb-b728-53a033e4f8c2? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.002","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":"32e0e8953592a86cf0fa97371ac8610d"} device-1 | {"level":"info","message":"OPTIONS /devices/8ea05aee-301c-49eb-b728-53a033e4f8c2? 200 0ms","method":"OPTIONS","requestID":"32e0e8953592a86cf0fa97371ac8610d","responseTime":0,"status":200,"url":"/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"03cefc3882d0ba999cce6f22fbcc8187","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":"03cefc3882d0ba999cce6f22fbcc8187","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"03cefc3882d0ba999cce6f22fbcc8187"} device-1 | {"level":"info","message":"OPTIONS /devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f? 200 1ms","method":"OPTIONS","requestID":"03cefc3882d0ba999cce6f22fbcc8187","responseTime":1,"status":200,"url":"/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w","level":"info","message":"auth send jwt","requestID":"ca41e4bedcad38f56480d3e3382dfd72"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"ca41e4bedcad38f56480d3e3382dfd72","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ca41e4bedcad38f56480d3e3382dfd72"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:39Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w","level":"info","message":"auth send jwt","requestID":"5b5f1ab6a851b2495305033b7dca84c8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5b5f1ab6a851b2495305033b7dca84c8","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.536857,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:39Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5b5f1ab6a851b2495305033b7dca84c8"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ca41e4bedcad38f56480d3e3382dfd72","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615939,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ca41e4bedcad38f56480d3e3382dfd72","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.597877,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"5b5f1ab6a851b2495305033b7dca84c8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615939,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5b5f1ab6a851b2495305033b7dca84c8","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea05aee-301c-49eb-b728-53a033e4f8c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea05aee-301c-49eb-b728-53a033e4f8c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:37.605761353Z"}]},"request_id":"edcd8415-dd48-4bcf-a3b1-c0f4e3db4b8f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615939.6832325} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ca41e4bedcad38f56480d3e3382dfd72","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619532e6-600d-45a9-a1e7-2d63e7ef0c6f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619532e6-600d-45a9-a1e7-2d63e7ef0c6f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:37.557222827Z"}]},"request_id":"cc5b7fd1-827c-400a-8f67-c043945c17db","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615939.6870494} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5b5f1ab6a851b2495305033b7dca84c8","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2148a491-c395-4080-8a77-6d7e68caae77","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615939.68951} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ca41e4bedcad38f56480d3e3382dfd72","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"51d131db-fb8c-45a1-b862-c35d498b5a7b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615939.6937845} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"5b5f1ab6a851b2495305033b7dca84c8","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea05aee-301c-49eb-b728-53a033e4f8c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea05aee-301c-49eb-b728-53a033e4f8c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:37.605761353Z"}]},"request_id":"8039d42d-1c6d-48dd-99f7-e32184e85cf2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615939.7056873} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ca41e4bedcad38f56480d3e3382dfd72","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ca41e4bedcad38f56480d3e3382dfd72"} gateway-1 | {"time_local":"02/Aug/2024:16:25:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8ea05aee-301c-49eb-b728-53a033e4f8c2? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.050","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":"ca41e4bedcad38f56480d3e3382dfd72"} device-1 | {"level":"info","message":"PATCH /devices/8ea05aee-301c-49eb-b728-53a033e4f8c2? 200 42ms","method":"PATCH","requestID":"ca41e4bedcad38f56480d3e3382dfd72","responseTime":42,"status":200,"url":"/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619532e6-600d-45a9-a1e7-2d63e7ef0c6f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619532e6-600d-45a9-a1e7-2d63e7ef0c6f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:37.557222827Z"}]},"request_id":"f1d238ea-d3cd-4bad-a418-1887b8fce61e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615939.718983} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5b5f1ab6a851b2495305033b7dca84c8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5b5f1ab6a851b2495305033b7dca84c8"} device-1 | {"level":"info","message":"PATCH /devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f? 200 49ms","method":"PATCH","requestID":"5b5f1ab6a851b2495305033b7dca84c8","responseTime":49,"status":200,"url":"/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.055","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":"5b5f1ab6a851b2495305033b7dca84c8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w","level":"info","message":"auth send jwt","requestID":"4e620626c5e7e96a727c7a9dacab2c67"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4e620626c5e7e96a727c7a9dacab2c67","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4e620626c5e7e96a727c7a9dacab2c67"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.263232,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"4e620626c5e7e96a727c7a9dacab2c67","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615939,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4e620626c5e7e96a727c7a9dacab2c67","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619532e6-600d-45a9-a1e7-2d63e7ef0c6f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619532e6-600d-45a9-a1e7-2d63e7ef0c6f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:37.557222827Z"}]},"request_id":"1ae94783-a9f1-45a2-84c1-8d67ab094285","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615939.7484753} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4e620626c5e7e96a727c7a9dacab2c67","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4e620626c5e7e96a727c7a9dacab2c67"} device-1 | {"level":"info","message":"GET /devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f? 200 18ms","method":"GET","requestID":"4e620626c5e7e96a727c7a9dacab2c67","responseTime":18,"status":200,"url":"/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4e620626c5e7e96a727c7a9dacab2c67"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w","level":"info","message":"auth send jwt","requestID":"2c8b21a3d7a45fbef738ca4f21d261a0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2c8b21a3d7a45fbef738ca4f21d261a0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2c8b21a3d7a45fbef738ca4f21d261a0"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.297789,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"2c8b21a3d7a45fbef738ca4f21d261a0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615939,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2c8b21a3d7a45fbef738ca4f21d261a0","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea05aee-301c-49eb-b728-53a033e4f8c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea05aee-301c-49eb-b728-53a033e4f8c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:37.605761353Z"}]},"request_id":"9eef3db2-b5df-4703-9911-1cba3250ca25","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615939.7751513} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2c8b21a3d7a45fbef738ca4f21d261a0","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2c8b21a3d7a45fbef738ca4f21d261a0"} device-1 | {"level":"info","message":"GET /devices/8ea05aee-301c-49eb-b728-53a033e4f8c2? 200 20ms","method":"GET","requestID":"2c8b21a3d7a45fbef738ca4f21d261a0","responseTime":20,"status":200,"url":"/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8ea05aee-301c-49eb-b728-53a033e4f8c2? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2c8b21a3d7a45fbef738ca4f21d261a0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w","level":"info","message":"auth send jwt","requestID":"2602a1c4776f88f0bd087830f6be0fba"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2602a1c4776f88f0bd087830f6be0fba","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"2602a1c4776f88f0bd087830f6be0fba"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.042386,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"2602a1c4776f88f0bd087830f6be0fba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615939,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2602a1c4776f88f0bd087830f6be0fba","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62"},"level":"info","message":"Attempting to run experiment","requestID":"2602a1c4776f88f0bd087830f6be0fba"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62"},"level":"info","message":"Attempting to book experiment","requestID":"2602a1c4776f88f0bd087830f6be0fba"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62"},"level":"info","message":"Successfully booked experiment","requestID":"2602a1c4776f88f0bd087830f6be0fba"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"db49acb0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"db49fad0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.143644,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db49acb0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615939,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"db49acb0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.135938,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db49fad0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615939,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"db49fad0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619532e6-600d-45a9-a1e7-2d63e7ef0c6f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619532e6-600d-45a9-a1e7-2d63e7ef0c6f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:37.557222827Z"}]},"request_id":"c290ee66-b6b8-40e2-b57e-7b00b28110cd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615939.8455048} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"db49acb0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea05aee-301c-49eb-b728-53a033e4f8c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea05aee-301c-49eb-b728-53a033e4f8c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:37.605761353Z"}]},"request_id":"3bb6f3b4-4ad8-4f8e-8673-a5f05a4217de","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615939.8466065} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"db49fad0-50eb-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"db49acb0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f? 200 15ms","method":"GET","requestID":"db49acb0-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"db49fad0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/8ea05aee-301c-49eb-b728-53a033e4f8c2? 200 14ms","method":"GET","requestID":"db49fad0-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62"},"level":"info","message":"Setting up experiment","requestID":"2602a1c4776f88f0bd087830f6be0fba"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"2602a1c4776f88f0bd087830f6be0fba"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62"},"level":"info","message":"Successfully locked booking for experiment","requestID":"2602a1c4776f88f0bd087830f6be0fba"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"2602a1c4776f88f0bd087830f6be0fba"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"2602a1c4776f88f0bd087830f6be0fba"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62"},"level":"info","message":"Attempting to update booking for experiment","requestID":"2602a1c4776f88f0bd087830f6be0fba"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62"},"level":"info","message":"Successfully updated booking for experiment","requestID":"2602a1c4776f88f0bd087830f6be0fba"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62"},"level":"info","message":"Successfully set up experiment","requestID":"2602a1c4776f88f0bd087830f6be0fba"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"db54a930-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"db54d040-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"db554570-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.779753,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db54a930-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615939,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62"},"level":"info","message":"Successfully running experiment","requestID":"2602a1c4776f88f0bd087830f6be0fba"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"db54a930-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.04561,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db54d040-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615939,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"db54d040-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.88586,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619532e6-600d-45a9-a1e7-2d63e7ef0c6f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7b2be9f0-d514-4ae9-9b31-35da22bef08b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615939.9180093} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db554570-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f","object_type":"device","rebac_allow":false,"scope_allow":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":"db554570-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619532e6-600d-45a9-a1e7-2d63e7ef0c6f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619532e6-600d-45a9-a1e7-2d63e7ef0c6f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:37.557222827Z"}]},"request_id":"fb5baba8-43c6-4dd3-8541-46804fa3daf5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615939.9211302} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea05aee-301c-49eb-b728-53a033e4f8c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea05aee-301c-49eb-b728-53a033e4f8c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:37.605761353Z"}]},"request_id":"713a2f96-bc1a-4359-9b5b-87a022e128b5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615939.9230766} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"db54a930-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"db54d040-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"db554570-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f/signaling 200 22ms","method":"POST","requestID":"db554570-50eb-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"db54a930-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f? 200 27ms","method":"GET","requestID":"db54a930-50eb-11ef-8434-2f6d198c7397","responseTime":27,"status":200,"url":"/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"db54d040-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/8ea05aee-301c-49eb-b728-53a033e4f8c2? 200 27ms","method":"GET","requestID":"db54d040-50eb-11ef-8434-2f6d198c7397","responseTime":27,"status":200,"url":"/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"db58eef0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F640ebac0-e2f6-4751-a6ea-8c3d554f5e62#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F640ebac0-e2f6-4751-a6ea-8c3d554f5e62","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"863bfd06-853f-4fba-9014-2acf75e198c1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615939.9379945} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"011579dd-7f97-451b-ba76-d58c165b47ca","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615939.9383364} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"2602a1c4776f88f0bd087830f6be0fba","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"db59d950-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea05aee-301c-49eb-b728-53a033e4f8c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cb81a926-67ce-41fb-82e7-cc0be6cb4daf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615939.9415898} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.67589,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db58eef0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2","object_type":"device","rebac_allow":false,"scope_allow":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":"db58eef0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:39Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"db58eef0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8ea05aee-301c-49eb-b728-53a033e4f8c2/signaling 200 11ms","method":"POST","requestID":"db58eef0-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619532e6-600d-45a9-a1e7-2d63e7ef0c6f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b62a1774-bc94-4e86-abc9-9a1654949a0c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615939.9478464} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.064862,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:39Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"2602a1c4776f88f0bd087830f6be0fba"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db59d950-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f","object_type":"device","rebac_allow":false,"scope_allow":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":"db59d950-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:25:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1288","request_time":"0.167","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2602a1c4776f88f0bd087830f6be0fba"} experiment-1 | {"level":"info","message":"POST /experiments? 201 161ms","method":"POST","requestID":"2602a1c4776f88f0bd087830f6be0fba","responseTime":161,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"db59d950-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f/signaling 200 12ms","method":"POST","requestID":"db59d950-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w","level":"info","message":"auth send jwt","requestID":"58e79deac9b2e68667d0609eb66ea679"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"58e79deac9b2e68667d0609eb66ea679","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"db5c2340-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"58e79deac9b2e68667d0609eb66ea679"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea05aee-301c-49eb-b728-53a033e4f8c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5bc07290-b25b-4ee7-ae9f-2710301dc918","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615939.9612808} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.709514,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"58e79deac9b2e68667d0609eb66ea679","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615939,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"58e79deac9b2e68667d0609eb66ea679","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.608806,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db5c2340-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2","object_type":"device","rebac_allow":false,"scope_allow":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":"db5c2340-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619532e6-600d-45a9-a1e7-2d63e7ef0c6f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619532e6-600d-45a9-a1e7-2d63e7ef0c6f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:37.557222827Z"}]},"request_id":"39057172-0f83-43d8-a24f-cd8c73a871d2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615939.9652011} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"58e79deac9b2e68667d0609eb66ea679","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"db5c2340-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8ea05aee-301c-49eb-b728-53a033e4f8c2/signaling 200 11ms","method":"POST","requestID":"db5c2340-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"2602a1c4776f88f0bd087830f6be0fba"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"db5e1f10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"db5e6d30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"58e79deac9b2e68667d0609eb66ea679"} gateway-1 | {"time_local":"02/Aug/2024:16:25:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"58e79deac9b2e68667d0609eb66ea679"} device-1 | {"level":"info","message":"GET /devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f? 200 15ms","method":"GET","requestID":"58e79deac9b2e68667d0609eb66ea679","responseTime":15,"status":200,"url":"/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.064941,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db5e1f10-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615939,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"db5e1f10-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.632289,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db5e6d30-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615939,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"db5e6d30-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w","level":"info","message":"auth send jwt","requestID":"bf463b8d1aa49bcdeb4005bc83cee38f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"bf463b8d1aa49bcdeb4005bc83cee38f","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bf463b8d1aa49bcdeb4005bc83cee38f"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619532e6-600d-45a9-a1e7-2d63e7ef0c6f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619532e6-600d-45a9-a1e7-2d63e7ef0c6f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:37.557222827Z"}]},"request_id":"d55a61ba-aaf4-4ff3-8e42-77a68c07ebbb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615939.9779382} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"db5e1f10-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea05aee-301c-49eb-b728-53a033e4f8c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea05aee-301c-49eb-b728-53a033e4f8c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:37.605761353Z"}]},"request_id":"150fe528-7d29-40a1-b0ed-364b68999954","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615939.978907} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"db5e6d30-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.700488,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:39Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"db5e1f10-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bf463b8d1aa49bcdeb4005bc83cee38f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615939,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bf463b8d1aa49bcdeb4005bc83cee38f","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f? 200 14ms","method":"GET","requestID":"db5e1f10-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"db5e6d30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/8ea05aee-301c-49eb-b728-53a033e4f8c2? 200 12ms","method":"GET","requestID":"db5e6d30-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62"},"level":"info","message":"Building connection plan","requestID":"2602a1c4776f88f0bd087830f6be0fba"} 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":"4307820f-8c0d-4efa-9cc4-ce6e4bef5052"},{"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":"d4f9c679-2fb0-40e2-91f1-cc87977df95f"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"61da67f1-724d-4e17-9048-6468ba606bdf"}]},"level":"info","message":"Built pairwise service configurations","requestID":"2602a1c4776f88f0bd087830f6be0fba"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"2602a1c4776f88f0bd087830f6be0fba"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"db60b720-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea05aee-301c-49eb-b728-53a033e4f8c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea05aee-301c-49eb-b728-53a033e4f8c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:37.605761353Z"}]},"request_id":"5bda17ed-34db-4374-9abe-e74c0d31a001","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615939.9869692} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"bf463b8d1aa49bcdeb4005bc83cee38f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bf463b8d1aa49bcdeb4005bc83cee38f"} gateway-1 | {"time_local":"02/Aug/2024:16:25:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8ea05aee-301c-49eb-b728-53a033e4f8c2? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bf463b8d1aa49bcdeb4005bc83cee38f"} device-1 | {"level":"info","message":"GET /devices/8ea05aee-301c-49eb-b728-53a033e4f8c2? 200 13ms","method":"GET","requestID":"bf463b8d1aa49bcdeb4005bc83cee38f","responseTime":13,"status":200,"url":"/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.956369,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db60b720-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615939,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTkzOX0.CK9-gv73_6KA2CLz7eJ8eNLwhSI-Zz6CuKFTF6UNs0w"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"db60b720-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"01f15b91-1da4-4e15-af5c-ce037247d151","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615940.0011766} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"251bbb98-082d-4f10-8108-bf8f0767a992","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615940.0013669} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"db60b720-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"db60b720-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"db60b720-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/c1232be4-12c4-48c5-93d4-b94afe270866'","requestID":"db60b720-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/c1232be4-12c4-48c5-93d4-b94afe270866'","requestID":"db60b720-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"db60b720-50eb-11ef-8434-2f6d198c7397"} 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":"db60b720-50eb-11ef-8434-2f6d198c7397","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":"db60b720-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"2602a1c4776f88f0bd087830f6be0fba"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"db691b90-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:40Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619532e6-600d-45a9-a1e7-2d63e7ef0c6f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"42e4c4b6-9110-49dc-bf84-25d184f07fc9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615940.04499} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.165445,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db691b90-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f","object_type":"device","rebac_allow":false,"scope_allow":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":"db691b90-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"db691b90-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f/signaling 200 8ms","method":"POST","requestID":"db691b90-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"db6aa230-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:40Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea05aee-301c-49eb-b728-53a033e4f8c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e515125d-e5f8-4480-b29e-2bc30211b1fa","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615940.0556028} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.317839,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db6aa230-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2","object_type":"device","rebac_allow":false,"scope_allow":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":"db6aa230-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"db6aa230-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8ea05aee-301c-49eb-b728-53a033e4f8c2/signaling 200 8ms","method":"POST","requestID":"db6aa230-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2/signaling"} device-1 | {"device":"8ea05aee-301c-49eb-b728-53a033e4f8c2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"8ea05aee-301c-49eb-b728-53a033e4f8c2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"619532e6-600d-45a9-a1e7-2d63e7ef0c6f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"619532e6-600d-45a9-a1e7-2d63e7ef0c6f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 7202517792810300342 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:kakY\r\na=ice-pwd:4YgDsYZGNzPJqfLcJs6xtz/P\r\na=ice-options:trickle\r\na=fingerprint:sha-256 FF:41:10:1F:02:0D:C7:BE:1D:74:13:1E:65:0A:9C:BC:AF:5E:FA:2F:CC:E4:2C:11:DE:AA:54:14:09:48:FB:D1\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"619532e6-600d-45a9-a1e7-2d63e7ef0c6f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 6514914545102523979 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:3uPY\r\na=ice-pwd:K5MREA3Heg5lGN3o0Lmdfsf6\r\na=ice-options:trickle\r\na=fingerprint:sha-256 BA:48:87:3E:86:2F:45:B8:BC:F2:AE:D7:63:02:7C:67:81:D1:23:DC:86:97:C3:90:06:09:8D:77:47:45:00:84\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"8ea05aee-301c-49eb-b728-53a033e4f8c2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3007298252 1 udp 2113937151 bd5e1de1-0022-4324-b3a6-4af5984d75a0.local 53195 typ host generation 0 ufrag 3uPY network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"8ea05aee-301c-49eb-b728-53a033e4f8c2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3144151307 1 udp 1677729535 141.24.211.56 53195 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 3uPY network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"8ea05aee-301c-49eb-b728-53a033e4f8c2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2'"} device-1 | {"content":{"candidate":"candidate:3827431633 1 udp 2113937151 37e23ef4-781d-474b-8d3c-37157c00092b.local 39715 typ host generation 0 ufrag kakY network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"619532e6-600d-45a9-a1e7-2d63e7ef0c6f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3512144540 1 udp 1677729535 141.24.211.56 39715 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag kakY network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"619532e6-600d-45a9-a1e7-2d63e7ef0c6f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f'"} device-1 | {"device":"619532e6-600d-45a9-a1e7-2d63e7ef0c6f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"8ea05aee-301c-49eb-b728-53a033e4f8c2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c1232be4-12c4-48c5-93d4-b94afe270866' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c1232be4-12c4-48c5-93d4-b94afe270866","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"619532e6-600d-45a9-a1e7-2d63e7ef0c6f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"568fb900f49a456100ddfdeadaa97606","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)"} device-1 | {"device":"8ea05aee-301c-49eb-b728-53a033e4f8c2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"568fb900f49a456100ddfdeadaa97606","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/c1232be4-12c4-48c5-93d4-b94afe270866"}}},"level":"info","message":"received a callback","requestID":"568fb900f49a456100ddfdeadaa97606"} device-1 | {"device":"619532e6-600d-45a9-a1e7-2d63e7ef0c6f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"8ea05aee-301c-49eb-b728-53a033e4f8c2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"568fb900f49a456100ddfdeadaa97606","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:40 +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":"568fb900f49a456100ddfdeadaa97606"} device-1 | {"device":"8ea05aee-301c-49eb-b728-53a033e4f8c2","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"c1232be4-12c4-48c5-93d4-b94afe270866","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"c1232be4-12c4-48c5-93d4-b94afe270866","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/c1232be4-12c4-48c5-93d4-b94afe270866' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c1232be4-12c4-48c5-93d4-b94afe270866","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"54663e32693864a8a461f3736dac95b6","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":"54663e32693864a8a461f3736dac95b6","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/c1232be4-12c4-48c5-93d4-b94afe270866"}}},"level":"info","message":"received a callback","requestID":"54663e32693864a8a461f3736dac95b6"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"db76fe40-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:40Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc1232be4-12c4-48c5-93d4-b94afe270866","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5e8098e9-a14d-4cba-a5d4-2587f38ec4d3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615940.1362746} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.02892,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c1232be4-12c4-48c5-93d4-b94afe270866","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db76fe40-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/c1232be4-12c4-48c5-93d4-b94afe270866","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":"db76fe40-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"db76fe40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/c1232be4-12c4-48c5-93d4-b94afe270866 200 7ms","method":"GET","requestID":"db76fe40-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/peerconnections/c1232be4-12c4-48c5-93d4-b94afe270866"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"54663e32693864a8a461f3736dac95b6","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:40 +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":"54663e32693864a8a461f3736dac95b6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"db7b1cf0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:40Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea05aee-301c-49eb-b728-53a033e4f8c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e7f5c04-8e1e-40db-b152-954697a41a99","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615940.163958} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.398545,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db7b1cf0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2","object_type":"device","rebac_allow":false,"scope_allow":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":"db7b1cf0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"db7b1cf0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8ea05aee-301c-49eb-b728-53a033e4f8c2/signaling 200 8ms","method":"POST","requestID":"db7b1cf0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"db7ca390-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:40Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619532e6-600d-45a9-a1e7-2d63e7ef0c6f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ca6797f0-ef87-4d88-b34b-6c83511befec","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615940.1734045} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.103952,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db7ca390-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f","object_type":"device","rebac_allow":false,"scope_allow":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":"db7ca390-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"db7ca390-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f/signaling 200 8ms","method":"POST","requestID":"db7ca390-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0MH0.pdWaJ4U6HmJqONtqWKQ0AfI4nsCRLh5N6JzVn7T61k8","level":"info","message":"auth send jwt","requestID":"499d35aac38a177e87e4bdf86407cc64"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"499d35aac38a177e87e4bdf86407cc64","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62","requestID":"499d35aac38a177e87e4bdf86407cc64"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.713498,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"499d35aac38a177e87e4bdf86407cc64","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615940,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0MH0.pdWaJ4U6HmJqONtqWKQ0AfI4nsCRLh5N6JzVn7T61k8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"499d35aac38a177e87e4bdf86407cc64","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62","requestID":"499d35aac38a177e87e4bdf86407cc64"} experiment-1 | {"level":"info","message":"GET /experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62 200 9ms","method":"GET","requestID":"499d35aac38a177e87e4bdf86407cc64","responseTime":9,"status":200,"url":"/experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62"} gateway-1 | {"time_local":"02/Aug/2024:16:25:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62 HTTP/1.1","status": "200","body_bytes_sent":"1361","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"499d35aac38a177e87e4bdf86407cc64"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0MH0.pdWaJ4U6HmJqONtqWKQ0AfI4nsCRLh5N6JzVn7T61k8","level":"info","message":"auth send jwt","requestID":"fb9f730376937eeb86146c6bb9f6f221"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"fb9f730376937eeb86146c6bb9f6f221","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62","requestID":"fb9f730376937eeb86146c6bb9f6f221"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.766255,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:40Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fb9f730376937eeb86146c6bb9f6f221","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615940,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0MH0.pdWaJ4U6HmJqONtqWKQ0AfI4nsCRLh5N6JzVn7T61k8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fb9f730376937eeb86146c6bb9f6f221","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62"},"level":"info","message":"Attempting to finish experiment","requestID":"fb9f730376937eeb86146c6bb9f6f221"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"db87ee30-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.208822,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:40Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c1232be4-12c4-48c5-93d4-b94afe270866","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db87ee30-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/c1232be4-12c4-48c5-93d4-b94afe270866","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615940,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0MH0.pdWaJ4U6HmJqONtqWKQ0AfI4nsCRLh5N6JzVn7T61k8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"db87ee30-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/c1232be4-12c4-48c5-93d4-b94afe270866","device":"8ea05aee-301c-49eb-b728-53a033e4f8c2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/c1232be4-12c4-48c5-93d4-b94afe270866","device":"619532e6-600d-45a9-a1e7-2d63e7ef0c6f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c1232be4-12c4-48c5-93d4-b94afe270866' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/c1232be4-12c4-48c5-93d4-b94afe270866' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c1232be4-12c4-48c5-93d4-b94afe270866","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc1232be4-12c4-48c5-93d4-b94afe270866': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc1232be4-12c4-48c5-93d4-b94afe270866","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"090aaa67-37fa-49b2-9f97-ad187cc61bb3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615940.272533} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"add2efd4-fb00-4e2d-b393-8d568537dcad","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615940.2728417} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"df7871041221e25ef1981532aa5bd22d","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":"df7871041221e25ef1981532aa5bd22d","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"db87ee30-50eb-11ef-8434-2f6d198c7397","responseTime":14,"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c1232be4-12c4-48c5-93d4-b94afe270866"}}},"level":"info","message":"received a callback","requestID":"df7871041221e25ef1981532aa5bd22d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5926d7766a92bd2dd7840c982280abf4","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":"5926d7766a92bd2dd7840c982280abf4","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c1232be4-12c4-48c5-93d4-b94afe270866"}}},"level":"info","message":"received a callback","requestID":"5926d7766a92bd2dd7840c982280abf4"} device-1 | {"data":{"peerconnection":"c1232be4-12c4-48c5-93d4-b94afe270866","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"db87ee30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/c1232be4-12c4-48c5-93d4-b94afe270866 204 56ms","method":"DELETE","requestID":"db87ee30-50eb-11ef-8434-2f6d198c7397","responseTime":56,"status":204,"url":"/peerconnections/c1232be4-12c4-48c5-93d4-b94afe270866"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62"},"level":"info","message":"Successfully finished experiment","requestID":"fb9f730376937eeb86146c6bb9f6f221"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"db944a40-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:40Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ea05aee-301c-49eb-b728-53a033e4f8c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4f9831f7-6d4e-40e3-a7cb-6408d7a46b3d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615940.3325105} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.221086,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db944a40-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2","object_type":"device","rebac_allow":false,"scope_allow":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":"db944a40-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"db944a40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8ea05aee-301c-49eb-b728-53a033e4f8c2/signaling 200 16ms","method":"POST","requestID":"db944a40-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F640ebac0-e2f6-4751-a6ea-8c3d554f5e62': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F640ebac0-e2f6-4751-a6ea-8c3d554f5e62","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"6d7a4528-53af-40de-b380-aec5ab82f647","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615940.341983} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"388229c4-d1e9-444c-9f69-13765574a3d7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615940.342703} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"db975780-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"fb9f730376937eeb86146c6bb9f6f221","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:40Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619532e6-600d-45a9-a1e7-2d63e7ef0c6f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6d059fb1-90b8-4b21-9f22-db7a51e6d6b6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615940.3516297} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.116348,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db975780-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f","object_type":"device","rebac_allow":false,"scope_allow":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":"db975780-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"db975780-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f/signaling 200 14ms","method":"POST","requestID":"db975780-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62","requestID":"fb9f730376937eeb86146c6bb9f6f221"} gateway-1 | {"time_local":"02/Aug/2024:16:25:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.190","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fb9f730376937eeb86146c6bb9f6f221"} experiment-1 | {"level":"info","message":"DELETE /experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62 204 185ms","method":"DELETE","requestID":"fb9f730376937eeb86146c6bb9f6f221","responseTime":185,"status":204,"url":"/experiments/640ebac0-e2f6-4751-a6ea-8c3d554f5e62"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 144ms","method":"POST","requestID":"df7871041221e25ef1981532aa5bd22d","responseTime":144,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:40 +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":"df7871041221e25ef1981532aa5bd22d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 143ms","method":"POST","requestID":"5926d7766a92bd2dd7840c982280abf4","responseTime":143,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:40 +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":"5926d7766a92bd2dd7840c982280abf4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0MH0.pdWaJ4U6HmJqONtqWKQ0AfI4nsCRLh5N6JzVn7T61k8","level":"info","message":"auth send jwt","requestID":"0dfc604919e515d1a2127b1c5daf9759"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0dfc604919e515d1a2127b1c5daf9759","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0dfc604919e515d1a2127b1c5daf9759"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.062328,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0dfc604919e515d1a2127b1c5daf9759","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615940,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0MH0.pdWaJ4U6HmJqONtqWKQ0AfI4nsCRLh5N6JzVn7T61k8"} gateway-1 | {"time_local":"02/Aug/2024:16:25:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3318","request_time":"0.804","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":"aeec97733e70dfc15ecf4c5084c7c252"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0dfc604919e515d1a2127b1c5daf9759","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:25:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3320","request_time":"0.796","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":"9185e452c4487a785ea10b3b199635e4"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/8ea05aee-301c-49eb-b728-53a033e4f8c2' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/619532e6-600d-45a9-a1e7-2d63e7ef0c6f' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"199ae127-006b-4a81-b2a8-2f66433dd064","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615940.4525151} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0dfc604919e515d1a2127b1c5daf9759","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9427be9d-88f6-447b-ab5a-b586da6f57bf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615940.4576855} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"0dfc604919e515d1a2127b1c5daf9759","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"63e458ad-ced5-4577-828a-0806fdac73ee","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615940.4685395} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5ea82641-ee11-48f9-a784-2d9fd748daa7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615940.4691973} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"0dfc604919e515d1a2127b1c5daf9759","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:40.468484965Z"}]},"request_id":"b875eac6-7778-4c5a-8af3-74e18f529332","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615940.4730697} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0dfc604919e515d1a2127b1c5daf9759","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0dfc604919e515d1a2127b1c5daf9759"} gateway-1 | {"time_local":"02/Aug/2024:16:25:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0dfc604919e515d1a2127b1c5daf9759"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"0dfc604919e515d1a2127b1c5daf9759","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0MH0.pdWaJ4U6HmJqONtqWKQ0AfI4nsCRLh5N6JzVn7T61k8","level":"info","message":"auth send jwt","requestID":"829229b4fe1dbd49202a50a7ff19f8cb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"829229b4fe1dbd49202a50a7ff19f8cb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"829229b4fe1dbd49202a50a7ff19f8cb"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:40Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.706282,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"829229b4fe1dbd49202a50a7ff19f8cb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615940,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0MH0.pdWaJ4U6HmJqONtqWKQ0AfI4nsCRLh5N6JzVn7T61k8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"829229b4fe1dbd49202a50a7ff19f8cb","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d95f4e6-3426-468b-84e1-dcf5c77954bd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c857dc27-bc2a-41d6-a033-4112cc5d6660","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615940.4965897} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"829229b4fe1dbd49202a50a7ff19f8cb","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e4d974ee-cfcf-41f7-898b-3db811ae98b6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615940.501172} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"829229b4fe1dbd49202a50a7ff19f8cb","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d95f4e6-3426-468b-84e1-dcf5c77954bd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"70f6de5b-24f5-4872-a914-2c9dd740e374","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615940.517714} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c9ce8b54-0cfa-4c34-b356-719181a24c22","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615940.517787} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"829229b4fe1dbd49202a50a7ff19f8cb","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d95f4e6-3426-468b-84e1-dcf5c77954bd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d95f4e6-3426-468b-84e1-dcf5c77954bd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:40.517691892Z"}]},"request_id":"14073d2b-df20-4442-abcb-aa91ca4b6c25","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615940.521031} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"829229b4fe1dbd49202a50a7ff19f8cb","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"829229b4fe1dbd49202a50a7ff19f8cb"} gateway-1 | {"time_local":"02/Aug/2024:16:25:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"829229b4fe1dbd49202a50a7ff19f8cb"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"829229b4fe1dbd49202a50a7ff19f8cb","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0MX0._NH2rdLKiUSaNdlwN8b5xqjr6rzc-MlRqca1otI7aSY","level":"info","message":"auth send jwt","requestID":"c00752843f58562e9621c78971732434"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c00752843f58562e9621c78971732434","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c00752843f58562e9621c78971732434"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:41Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.135713,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:41Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c00752843f58562e9621c78971732434","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615941,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0MX0._NH2rdLKiUSaNdlwN8b5xqjr6rzc-MlRqca1otI7aSY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c00752843f58562e9621c78971732434","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d95f4e6-3426-468b-84e1-dcf5c77954bd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d95f4e6-3426-468b-84e1-dcf5c77954bd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:40.517691892Z"}]},"request_id":"5beca759-be92-4f0a-84b7-f87d2c414794","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615941.0435963} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c00752843f58562e9621c78971732434","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4093b3af-48d3-4640-b06b-d646775057fe","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615941.0498116} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c00752843f58562e9621c78971732434","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d95f4e6-3426-468b-84e1-dcf5c77954bd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d95f4e6-3426-468b-84e1-dcf5c77954bd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:40.517691892Z"}]},"request_id":"8561086b-ea9b-43ff-812e-1b1e1a45f006","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615941.0624788} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c00752843f58562e9621c78971732434","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c00752843f58562e9621c78971732434"} gateway-1 | {"time_local":"02/Aug/2024:16:25:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"c00752843f58562e9621c78971732434"} device-1 | {"level":"info","message":"PATCH /devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd 200 34ms","method":"PATCH","requestID":"c00752843f58562e9621c78971732434","responseTime":34,"status":200,"url":"/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0MX0._NH2rdLKiUSaNdlwN8b5xqjr6rzc-MlRqca1otI7aSY","level":"info","message":"auth send jwt","requestID":"06bd9e169afb592e642160d357f69fef"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"06bd9e169afb592e642160d357f69fef","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"06bd9e169afb592e642160d357f69fef"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:41Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.803026,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:41Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"06bd9e169afb592e642160d357f69fef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615941,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0MX0._NH2rdLKiUSaNdlwN8b5xqjr6rzc-MlRqca1otI7aSY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"06bd9e169afb592e642160d357f69fef","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"06bd9e169afb592e642160d357f69fef"} device-1 | {"level":"info","message":"POST /devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd/websocket 200 22ms","method":"POST","requestID":"06bd9e169afb592e642160d357f69fef","responseTime":22,"status":200,"url":"/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:25:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"06bd9e169afb592e642160d357f69fef"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"69241d97b87097dc9d6379f1386b584c","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":"69241d97b87097dc9d6379f1386b584c","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee/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":"69241d97b87097dc9d6379f1386b584c"} device-1 | {"level":"info","message":"OPTIONS /devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee/websocket 200 1ms","method":"OPTIONS","requestID":"69241d97b87097dc9d6379f1386b584c","responseTime":1,"status":200,"url":"/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0Mn0.qOhal_jYroy0DMYg462F7N6IYZS-Leh9BNNVEp9KYr4","level":"info","message":"auth send jwt","requestID":"c3d5af5a40d6bcce6469b0f2664dff6f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c3d5af5a40d6bcce6469b0f2664dff6f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c3d5af5a40d6bcce6469b0f2664dff6f"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.154398,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c3d5af5a40d6bcce6469b0f2664dff6f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615942,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0Mn0.qOhal_jYroy0DMYg462F7N6IYZS-Leh9BNNVEp9KYr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c3d5af5a40d6bcce6469b0f2664dff6f","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c3d5af5a40d6bcce6469b0f2664dff6f"} gateway-1 | {"time_local":"02/Aug/2024:16:25:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee/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":"c3d5af5a40d6bcce6469b0f2664dff6f"} device-1 | {"level":"info","message":"POST /devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee/websocket 200 23ms","method":"POST","requestID":"c3d5af5a40d6bcce6469b0f2664dff6f","responseTime":23,"status":200,"url":"/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"82ac5b6df6be05d129c43bcd87b1f14d","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":"82ac5b6df6be05d129c43bcd87b1f14d","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"82ac5b6df6be05d129c43bcd87b1f14d"} device-1 | {"level":"info","message":"OPTIONS /devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee? 200 1ms","method":"OPTIONS","requestID":"82ac5b6df6be05d129c43bcd87b1f14d","responseTime":1,"status":200,"url":"/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0Mn0.qOhal_jYroy0DMYg462F7N6IYZS-Leh9BNNVEp9KYr4","level":"info","message":"auth send jwt","requestID":"e712abb2429f11f7730b632b25aad5c6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e712abb2429f11f7730b632b25aad5c6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e712abb2429f11f7730b632b25aad5c6"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.252748,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e712abb2429f11f7730b632b25aad5c6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615942,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0Mn0.qOhal_jYroy0DMYg462F7N6IYZS-Leh9BNNVEp9KYr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e712abb2429f11f7730b632b25aad5c6","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:40.468484965Z"}]},"request_id":"c4c47b09-2a28-4930-a458-c324624b80c7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615942.626676} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e712abb2429f11f7730b632b25aad5c6","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c17889c6-7462-428b-81af-c71cd443c842","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615942.633663} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"e712abb2429f11f7730b632b25aad5c6","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:40.468484965Z"}]},"request_id":"87cd61e3-b457-49dd-ba7e-a8c1e226b085","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615942.647133} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e712abb2429f11f7730b632b25aad5c6","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e712abb2429f11f7730b632b25aad5c6"} gateway-1 | {"time_local":"02/Aug/2024:16:25:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.045","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":"e712abb2429f11f7730b632b25aad5c6"} device-1 | {"level":"info","message":"PATCH /devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee? 200 39ms","method":"PATCH","requestID":"e712abb2429f11f7730b632b25aad5c6","responseTime":39,"status":200,"url":"/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0Mn0.qOhal_jYroy0DMYg462F7N6IYZS-Leh9BNNVEp9KYr4","level":"info","message":"auth send jwt","requestID":"c4a3027213f168f0ce6b4b10ffa4a925"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c4a3027213f168f0ce6b4b10ffa4a925","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c4a3027213f168f0ce6b4b10ffa4a925"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.194981,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c4a3027213f168f0ce6b4b10ffa4a925","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615942,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0Mn0.qOhal_jYroy0DMYg462F7N6IYZS-Leh9BNNVEp9KYr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c4a3027213f168f0ce6b4b10ffa4a925","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:40.468484965Z"}]},"request_id":"dbbdcc13-de62-46d2-bb3a-93e85c7bbbb5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615942.6770713} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c4a3027213f168f0ce6b4b10ffa4a925","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c4a3027213f168f0ce6b4b10ffa4a925"} device-1 | {"level":"info","message":"GET /devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee? 200 16ms","method":"GET","requestID":"c4a3027213f168f0ce6b4b10ffa4a925","responseTime":16,"status":200,"url":"/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c4a3027213f168f0ce6b4b10ffa4a925"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0Mn0.qOhal_jYroy0DMYg462F7N6IYZS-Leh9BNNVEp9KYr4","level":"info","message":"auth send jwt","requestID":"ac57f7beabddf6a3e773cd6fbcf1db5c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ac57f7beabddf6a3e773cd6fbcf1db5c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ac57f7beabddf6a3e773cd6fbcf1db5c"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.268984,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ac57f7beabddf6a3e773cd6fbcf1db5c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615942,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0Mn0.qOhal_jYroy0DMYg462F7N6IYZS-Leh9BNNVEp9KYr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ac57f7beabddf6a3e773cd6fbcf1db5c","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d95f4e6-3426-468b-84e1-dcf5c77954bd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d95f4e6-3426-468b-84e1-dcf5c77954bd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:40.517691892Z"}]},"request_id":"f4e98bdf-8760-433c-a824-6c30c6f4f520","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615942.7012777} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ac57f7beabddf6a3e773cd6fbcf1db5c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ac57f7beabddf6a3e773cd6fbcf1db5c"} gateway-1 | {"time_local":"02/Aug/2024:16:25:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ac57f7beabddf6a3e773cd6fbcf1db5c"} device-1 | {"level":"info","message":"GET /devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd? 200 16ms","method":"GET","requestID":"ac57f7beabddf6a3e773cd6fbcf1db5c","responseTime":16,"status":200,"url":"/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0Mn0.qOhal_jYroy0DMYg462F7N6IYZS-Leh9BNNVEp9KYr4","level":"info","message":"auth send jwt","requestID":"f303cd40ea9276554b30e93d62502140"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f303cd40ea9276554b30e93d62502140","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"f303cd40ea9276554b30e93d62502140"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":2.108516,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f303cd40ea9276554b30e93d62502140","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615942,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0Mn0.qOhal_jYroy0DMYg462F7N6IYZS-Leh9BNNVEp9KYr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f303cd40ea9276554b30e93d62502140","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb"},"level":"info","message":"Attempting to run experiment","requestID":"f303cd40ea9276554b30e93d62502140"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb"},"level":"info","message":"Attempting to book experiment","requestID":"f303cd40ea9276554b30e93d62502140"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb"},"level":"info","message":"Successfully booked experiment","requestID":"f303cd40ea9276554b30e93d62502140"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dd084ca0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dd08c1d0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.33084,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dd084ca0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615942,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0Mn0.qOhal_jYroy0DMYg462F7N6IYZS-Leh9BNNVEp9KYr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"dd084ca0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.427295,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dd08c1d0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615942,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0Mn0.qOhal_jYroy0DMYg462F7N6IYZS-Leh9BNNVEp9KYr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"dd08c1d0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:40.468484965Z"}]},"request_id":"8fabe5f1-873f-4c5e-8499-6373a6602be2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615942.774643} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dd084ca0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d95f4e6-3426-468b-84e1-dcf5c77954bd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d95f4e6-3426-468b-84e1-dcf5c77954bd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:40.517691892Z"}]},"request_id":"4f73c25d-77a5-4da4-80cd-d38f9f036527","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615942.775397} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"dd08c1d0-50eb-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dd084ca0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee? 200 18ms","method":"GET","requestID":"dd084ca0-50eb-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dd08c1d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd? 200 15ms","method":"GET","requestID":"dd08c1d0-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb"},"level":"info","message":"Setting up experiment","requestID":"f303cd40ea9276554b30e93d62502140"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"f303cd40ea9276554b30e93d62502140"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb"},"level":"info","message":"Successfully locked booking for experiment","requestID":"f303cd40ea9276554b30e93d62502140"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"f303cd40ea9276554b30e93d62502140"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"f303cd40ea9276554b30e93d62502140"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb"},"level":"info","message":"Attempting to update booking for experiment","requestID":"f303cd40ea9276554b30e93d62502140"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb"},"level":"info","message":"Successfully updated booking for experiment","requestID":"f303cd40ea9276554b30e93d62502140"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb"},"level":"info","message":"Successfully set up experiment","requestID":"f303cd40ea9276554b30e93d62502140"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dd13e560-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dd140c70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dd143380-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb"},"level":"info","message":"Successfully running experiment","requestID":"f303cd40ea9276554b30e93d62502140"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.027755,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dd13e560-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615942,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0Mn0.qOhal_jYroy0DMYg462F7N6IYZS-Leh9BNNVEp9KYr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"dd13e560-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.170437,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dd140c70-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615942,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0Mn0.qOhal_jYroy0DMYg462F7N6IYZS-Leh9BNNVEp9KYr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"dd140c70-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35362","level":"info","msg":"Received request.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:40.468484965Z"}]},"request_id":"74f7bb66-88f8-4bef-bdc2-0c5474d54c97","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615942.8510144} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"dd13e560-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d95f4e6-3426-468b-84e1-dcf5c77954bd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d95f4e6-3426-468b-84e1-dcf5c77954bd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:40.517691892Z"}]},"request_id":"50eb06d6-4f0e-4149-af36-fd4e3b3f2e94","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615942.8535006} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b8a2bcd6-242d-465f-89d4-73b6c82df4a1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615942.853846} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"dd140c70-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:35362","level":"info","msg":"Sent response.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.777084,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dd143380-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","object_type":"device","rebac_allow":false,"scope_allow":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":"dd143380-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dd140c70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd? 200 19ms","method":"GET","requestID":"dd140c70-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dd13e560-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee? 200 21ms","method":"GET","requestID":"dd13e560-50eb-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dd143380-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee/signaling 200 20ms","method":"POST","requestID":"dd143380-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dd178ee0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dd17b5f0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"bbf98be9-6908-4bd8-bb97-da933fca23d4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615942.8642607} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"97fdd794-56f1-4406-9355-8c874bf3c2f0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615942.8645399} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a804e091-92be-4527-97f2-84ce825602b5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615942.867038} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.583594,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"f303cd40ea9276554b30e93d62502140","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d95f4e6-3426-468b-84e1-dcf5c77954bd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9fa0c836-8dd0-45e9-b3cb-d542a3fc739c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615942.8683147} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dd178ee0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","object_type":"device","rebac_allow":false,"scope_allow":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":"dd178ee0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.144229,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dd17b5f0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd","object_type":"device","rebac_allow":false,"scope_allow":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":"dd17b5f0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dd178ee0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee/signaling 200 11ms","method":"POST","requestID":"dd178ee0-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"f303cd40ea9276554b30e93d62502140"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dd17b5f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd/signaling 200 11ms","method":"POST","requestID":"dd17b5f0-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd/signaling"} gateway-1 | {"time_local":"02/Aug/2024:16:25:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.165","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f303cd40ea9276554b30e93d62502140"} experiment-1 | {"level":"info","message":"POST /experiments? 201 158ms","method":"POST","requestID":"f303cd40ea9276554b30e93d62502140","responseTime":158,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dd19b1c0-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0Mn0.qOhal_jYroy0DMYg462F7N6IYZS-Leh9BNNVEp9KYr4","level":"info","message":"auth send jwt","requestID":"2abdef095d7b8781b118a14933d467bd"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2abdef095d7b8781b118a14933d467bd","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:42Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2abdef095d7b8781b118a14933d467bd"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d95f4e6-3426-468b-84e1-dcf5c77954bd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"424902f0-d987-4a61-a228-14ef14d6fa8b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615942.8812573} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.936345,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dd19b1c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd","object_type":"device","rebac_allow":false,"scope_allow":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":"dd19b1c0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.781869,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"2abdef095d7b8781b118a14933d467bd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615942,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0Mn0.qOhal_jYroy0DMYg462F7N6IYZS-Leh9BNNVEp9KYr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2abdef095d7b8781b118a14933d467bd","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dd19b1c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd/signaling 200 10ms","method":"POST","requestID":"dd19b1c0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd/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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:40.468484965Z"}]},"request_id":"a051e3cb-7495-4221-affa-9f7beb6cb347","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615942.8873706} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"f303cd40ea9276554b30e93d62502140"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2abdef095d7b8781b118a14933d467bd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dd1bad90-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dd1bd4a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2abdef095d7b8781b118a14933d467bd"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.795173,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:42Z"} gateway-1 | {"time_local":"02/Aug/2024:16:25:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2abdef095d7b8781b118a14933d467bd"} device-1 | {"level":"info","message":"GET /devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee? 200 13ms","method":"GET","requestID":"2abdef095d7b8781b118a14933d467bd","responseTime":13,"status":200,"url":"/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dd1bad90-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615942,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0Mn0.qOhal_jYroy0DMYg462F7N6IYZS-Leh9BNNVEp9KYr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"dd1bad90-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Received request.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"client_addr":"127.0.0.1:56868","level":"info","msg":"Sent response.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.416996,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dd1bd4a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615942,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0Mn0.qOhal_jYroy0DMYg462F7N6IYZS-Leh9BNNVEp9KYr4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0Mn0.qOhal_jYroy0DMYg462F7N6IYZS-Leh9BNNVEp9KYr4","level":"info","message":"auth send jwt","requestID":"1a919db5cf3f510978365f027f414867"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"dd1bd4a0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1a919db5cf3f510978365f027f414867","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:40.468484965Z"}]},"request_id":"d712b39a-3de1-488f-a248-56ddd8e7864a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615942.8965156} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"dd1bad90-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1a919db5cf3f510978365f027f414867"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d95f4e6-3426-468b-84e1-dcf5c77954bd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d95f4e6-3426-468b-84e1-dcf5c77954bd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:40.517691892Z"}]},"request_id":"335a8b1c-670d-4911-a44f-b9f03b25ba66","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615942.8998413} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"dd1bd4a0-50eb-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:42Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dd1bad90-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.732178,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:42Z"} device-1 | {"level":"info","message":"GET /devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee? 200 13ms","method":"GET","requestID":"dd1bad90-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1a919db5cf3f510978365f027f414867","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615942,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0Mn0.qOhal_jYroy0DMYg462F7N6IYZS-Leh9BNNVEp9KYr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1a919db5cf3f510978365f027f414867","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dd1bd4a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd? 200 15ms","method":"GET","requestID":"dd1bd4a0-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d95f4e6-3426-468b-84e1-dcf5c77954bd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d95f4e6-3426-468b-84e1-dcf5c77954bd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:40.517691892Z"}]},"request_id":"212ac546-db3f-4ca9-b274-bc3453ba1a2e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615942.9060304} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb"},"level":"info","message":"Building connection plan","requestID":"f303cd40ea9276554b30e93d62502140"} 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":"e5895ee5-d13a-4510-8f73-775f00acccf0"},{"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":"88cc15c9-8cb6-4842-a6b7-a9d6f14e8613"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"082374d4-7a75-4928-9ee8-32bc78a89d39"}]},"level":"info","message":"Built pairwise service configurations","requestID":"f303cd40ea9276554b30e93d62502140"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"f303cd40ea9276554b30e93d62502140"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1a919db5cf3f510978365f027f414867","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"dd1e93c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1a919db5cf3f510978365f027f414867"} gateway-1 | {"time_local":"02/Aug/2024:16:25:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1a919db5cf3f510978365f027f414867"} device-1 | {"level":"info","message":"GET /devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd? 200 11ms","method":"GET","requestID":"1a919db5cf3f510978365f027f414867","responseTime":11,"status":200,"url":"/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.73728,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dd1e93c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615942,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0Mn0.qOhal_jYroy0DMYg462F7N6IYZS-Leh9BNNVEp9KYr4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"dd1e93c0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"84c74aa5-7d3c-4e97-a534-b1a9a9330b56","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615942.9198523} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3ec15508-9eaf-402c-9145-045e02332f16","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615942.9201083} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"dd1e93c0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"dd1e93c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"dd1e93c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/bae7c8ae-c09e-4f2b-9359-800126da4939'","requestID":"dd1e93c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/bae7c8ae-c09e-4f2b-9359-800126da4939'","requestID":"dd1e93c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"dd1e93c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"dd1e93c0-50eb-11ef-8434-2f6d198c7397","responseTime":23,"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":"dd1e93c0-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"f303cd40ea9276554b30e93d62502140"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dd26d120-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ad66263b-aef6-40a6-84fa-3b64d2dfe7b3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615942.9667878} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.197814,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dd26d120-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","object_type":"device","rebac_allow":false,"scope_allow":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":"dd26d120-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dd26d120-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee/signaling 200 8ms","method":"POST","requestID":"dd26d120-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dd2857c0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d95f4e6-3426-468b-84e1-dcf5c77954bd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dda85529-c4b9-4f84-877d-ad958412e7de","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615942.9772618} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.559741,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dd2857c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd","object_type":"device","rebac_allow":false,"scope_allow":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":"dd2857c0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dd2857c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd/signaling 200 10ms","method":"POST","requestID":"dd2857c0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd/signaling"} device-1 | {"device":"0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"1d95f4e6-3426-468b-84e1-dcf5c77954bd","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"bae7c8ae-c09e-4f2b-9359-800126da4939","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 8310730181355247930 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=msid-semantic: WMS\r\nm=application 9 DTLS/SCTP 5000\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:h3/A\r\na=ice-pwd:jKvq2voVqyfKADV2LXV1twVr\r\na=ice-options:trickle\r\na=fingerprint:sha-256 1F:AB:FD:78:96:FD:31:E6:64:80:53:8F:54:14:22:99:2F:7C:ED:68:A6:C4:B5:93:22:7C:5E:5B:D9:0A:BC:B5\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3078668161 1 udp 2113937151 ca7aa2e2-b669-474b-a1ef-26515f1c8fde.local 54303 typ host generation 0 ufrag h3/A network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:3218666566 1 udp 1677729535 141.24.211.56 54303 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag h3/A network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee'"} device-1 | {"device":"0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bae7c8ae-c09e-4f2b-9359-800126da4939' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bae7c8ae-c09e-4f2b-9359-800126da4939","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"239d5f8326efba1948bbaade5daa2502","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":"239d5f8326efba1948bbaade5daa2502","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/bae7c8ae-c09e-4f2b-9359-800126da4939"}}},"level":"info","message":"received a callback","requestID":"239d5f8326efba1948bbaade5daa2502"} device-1 | {"device":"1d95f4e6-3426-468b-84e1-dcf5c77954bd","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"1d95f4e6-3426-468b-84e1-dcf5c77954bd","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"1d95f4e6-3426-468b-84e1-dcf5c77954bd","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"239d5f8326efba1948bbaade5daa2502","responseTime":4,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25: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.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"239d5f8326efba1948bbaade5daa2502"} device-1 | {"data":{"peerconnection":"bae7c8ae-c09e-4f2b-9359-800126da4939","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"1d95f4e6-3426-468b-84e1-dcf5c77954bd","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"1d95f4e6-3426-468b-84e1-dcf5c77954bd","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"bae7c8ae-c09e-4f2b-9359-800126da4939","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bae7c8ae-c09e-4f2b-9359-800126da4939' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bae7c8ae-c09e-4f2b-9359-800126da4939","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dca89ded8028da1fdf0a10b97c0f14ba","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":"dca89ded8028da1fdf0a10b97c0f14ba","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/bae7c8ae-c09e-4f2b-9359-800126da4939"}}},"level":"info","message":"received a callback","requestID":"dca89ded8028da1fdf0a10b97c0f14ba"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"de6592b0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:45Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbae7c8ae-c09e-4f2b-9359-800126da4939","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d7607318-b5fd-4928-a771-cb28cf3e12b9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615945.0555491} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.343337,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/bae7c8ae-c09e-4f2b-9359-800126da4939","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"de6592b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/bae7c8ae-c09e-4f2b-9359-800126da4939","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":"de6592b0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"de6592b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/bae7c8ae-c09e-4f2b-9359-800126da4939 200 8ms","method":"GET","requestID":"de6592b0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/peerconnections/bae7c8ae-c09e-4f2b-9359-800126da4939"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"dca89ded8028da1fdf0a10b97c0f14ba","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:45 +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":"dca89ded8028da1fdf0a10b97c0f14ba"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"de696340-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:45Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7a5c31cb-a7f2-4557-b69d-1cb2f134a58e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615945.0814338} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.62732,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"de696340-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","object_type":"device","rebac_allow":false,"scope_allow":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":"de696340-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"de696340-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee/signaling 200 10ms","method":"POST","requestID":"de696340-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"de6b3800-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:45Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d95f4e6-3426-468b-84e1-dcf5c77954bd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"35329c63-cef1-4a69-996c-ef2eed2acb77","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615945.0941255} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.73603,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"de6b3800-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd","object_type":"device","rebac_allow":false,"scope_allow":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":"de6b3800-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"de6b3800-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd/signaling 200 12ms","method":"POST","requestID":"de6b3800-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0NX0.fhrxDlt4YVFFbf1JHh0ZCv6Q2wREbwsRWJEllizt-d8","level":"info","message":"auth send jwt","requestID":"7b5fbcf079330f8daab23ad70ef7966b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7b5fbcf079330f8daab23ad70ef7966b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb","requestID":"7b5fbcf079330f8daab23ad70ef7966b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.244616,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"7b5fbcf079330f8daab23ad70ef7966b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615945,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0NX0.fhrxDlt4YVFFbf1JHh0ZCv6Q2wREbwsRWJEllizt-d8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7b5fbcf079330f8daab23ad70ef7966b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb","requestID":"7b5fbcf079330f8daab23ad70ef7966b"} gateway-1 | {"time_local":"02/Aug/2024:16:25:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7b5fbcf079330f8daab23ad70ef7966b"} experiment-1 | {"level":"info","message":"GET /experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb 200 16ms","method":"GET","requestID":"7b5fbcf079330f8daab23ad70ef7966b","responseTime":16,"status":200,"url":"/experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0NX0.fhrxDlt4YVFFbf1JHh0ZCv6Q2wREbwsRWJEllizt-d8","level":"info","message":"auth send jwt","requestID":"e1e82d78078d7ab8bf896ffc4a3f4ea1"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"e1e82d78078d7ab8bf896ffc4a3f4ea1","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb","requestID":"e1e82d78078d7ab8bf896ffc4a3f4ea1"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.062705,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:45Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e1e82d78078d7ab8bf896ffc4a3f4ea1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615945,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0NX0.fhrxDlt4YVFFbf1JHh0ZCv6Q2wREbwsRWJEllizt-d8"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"e1e82d78078d7ab8bf896ffc4a3f4ea1","responseTime":10,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb"},"level":"info","message":"Attempting to finish experiment","requestID":"e1e82d78078d7ab8bf896ffc4a3f4ea1"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"de7b1680-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.396997,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:45Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/bae7c8ae-c09e-4f2b-9359-800126da4939","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"de7b1680-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/bae7c8ae-c09e-4f2b-9359-800126da4939","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615945,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0NX0.fhrxDlt4YVFFbf1JHh0ZCv6Q2wREbwsRWJEllizt-d8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"de7b1680-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/bae7c8ae-c09e-4f2b-9359-800126da4939","device":"0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"1d95f4e6-3426-468b-84e1-dcf5c77954bd","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"1d95f4e6-3426-468b-84e1-dcf5c77954bd","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"1d95f4e6-3426-468b-84e1-dcf5c77954bd","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bae7c8ae-c09e-4f2b-9359-800126da4939' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/bae7c8ae-c09e-4f2b-9359-800126da4939' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bae7c8ae-c09e-4f2b-9359-800126da4939","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1f65b87febe900783522f7abb7b52b64","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":"1f65b87febe900783522f7abb7b52b64","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d500834482b3592491deb400f978f1e9","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/bae7c8ae-c09e-4f2b-9359-800126da4939"}}},"level":"info","message":"received a callback","requestID":"1f65b87febe900783522f7abb7b52b64"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d500834482b3592491deb400f978f1e9","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/bae7c8ae-c09e-4f2b-9359-800126da4939"}}},"level":"info","message":"received a callback","requestID":"d500834482b3592491deb400f978f1e9"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbae7c8ae-c09e-4f2b-9359-800126da4939': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbae7c8ae-c09e-4f2b-9359-800126da4939","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"e22ea81e-46c8-4526-822d-19a1b6713b84","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615945.2221496} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3af601d7-6c2a-47a9-a322-4931acc81363","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615945.222368} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"de7b1680-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"bae7c8ae-c09e-4f2b-9359-800126da4939","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"de7b1680-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/bae7c8ae-c09e-4f2b-9359-800126da4939 204 42ms","method":"DELETE","requestID":"de7b1680-50eb-11ef-8434-2f6d198c7397","responseTime":42,"status":204,"url":"/peerconnections/bae7c8ae-c09e-4f2b-9359-800126da4939"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb"},"level":"info","message":"Successfully finished experiment","requestID":"e1e82d78078d7ab8bf896ffc4a3f4ea1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"de850190-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:45Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"16007ca2-05ff-490a-895f-b8df7cf873d9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615945.2629967} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.550008,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"de850190-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee","object_type":"device","rebac_allow":false,"scope_allow":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":"de850190-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"de850190-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee/signaling 200 10ms","method":"POST","requestID":"de850190-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"f592cd1b-0614-45ca-ae33-209be4125deb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615945.2699254} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"de86fd60-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cf1857fd-524b-4559-b63a-10403e0e75fe","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615945.2702448} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"e1e82d78078d7ab8bf896ffc4a3f4ea1","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:45Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d95f4e6-3426-468b-84e1-dcf5c77954bd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4fab661c-8354-4712-8d46-ba43de01f51b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615945.2749538} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.215822,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"de86fd60-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd","object_type":"device","rebac_allow":false,"scope_allow":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":"de86fd60-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"de86fd60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd/signaling 200 9ms","method":"POST","requestID":"de86fd60-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/1d95f4e6-3426-468b-84e1-dcf5c77954bd/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb","requestID":"e1e82d78078d7ab8bf896ffc4a3f4ea1"} gateway-1 | {"time_local":"02/Aug/2024:16:25:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.167","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e1e82d78078d7ab8bf896ffc4a3f4ea1"} experiment-1 | {"level":"info","message":"DELETE /experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb 204 162ms","method":"DELETE","requestID":"e1e82d78078d7ab8bf896ffc4a3f4ea1","responseTime":162,"status":204,"url":"/experiments/0dcb3aca-45f3-49a9-8b46-9bf1fb8eadcb"} gateway-1 | {"time_local":"02/Aug/2024:16:25:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3269","request_time":"4.238","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"0789ed7f0661845bfe91076dcc0fb43d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 117ms","method":"POST","requestID":"1f65b87febe900783522f7abb7b52b64","responseTime":117,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:45 +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":"1f65b87febe900783522f7abb7b52b64"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 118ms","method":"POST","requestID":"d500834482b3592491deb400f978f1e9","responseTime":118,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:45 +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.123","http_referrer":"","http_user_agent":"node-fetch","requestID":"d500834482b3592491deb400f978f1e9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0NX0.fhrxDlt4YVFFbf1JHh0ZCv6Q2wREbwsRWJEllizt-d8","level":"info","message":"auth send jwt","requestID":"deeac06172160afbbe14be8936c9c038"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"deeac06172160afbbe14be8936c9c038","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"deeac06172160afbbe14be8936c9c038"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:45Z"} gateway-1 | {"time_local":"02/Aug/2024:16:25:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3132","request_time":"2.777","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":"1d2380bb2d8c739e0420835ceb5559c6"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.846078,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"deeac06172160afbbe14be8936c9c038","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615945,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0NX0.fhrxDlt4YVFFbf1JHh0ZCv6Q2wREbwsRWJEllizt-d8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"deeac06172160afbbe14be8936c9c038","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/1d95f4e6-3426-468b-84e1-dcf5c77954bd' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4718011-0477-4019-a51e-c55b1c0cdd60","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e6642f37-1a01-41f9-a8a8-15ee6a3f2e68","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615945.3584433} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"deeac06172160afbbe14be8936c9c038","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/0e6f341d-0c31-4c44-8cbd-4c0c2774ecee' 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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f3e06fd1-d0eb-44e9-b753-3449baf870e1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615945.3636267} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"deeac06172160afbbe14be8936c9c038","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4718011-0477-4019-a51e-c55b1c0cdd60","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"252a7cb4-d1b0-483e-a786-3db4057d8f2f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615945.373229} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6a4ca6d8-f590-482c-9016-4a60c866b2aa","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615945.3735209} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"deeac06172160afbbe14be8936c9c038","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4718011-0477-4019-a51e-c55b1c0cdd60","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4718011-0477-4019-a51e-c55b1c0cdd60","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:45.373204820Z"}]},"request_id":"304d0550-80a5-4cb7-b3bc-6d7e1bc28568","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615945.3777478} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"deeac06172160afbbe14be8936c9c038","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"deeac06172160afbbe14be8936c9c038"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"deeac06172160afbbe14be8936c9c038","responseTime":40,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"deeac06172160afbbe14be8936c9c038"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0NX0.fhrxDlt4YVFFbf1JHh0ZCv6Q2wREbwsRWJEllizt-d8","level":"info","message":"auth send jwt","requestID":"f0ce0d1f0f86e816bf6b0d65ff572b0d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f0ce0d1f0f86e816bf6b0d65ff572b0d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f0ce0d1f0f86e816bf6b0d65ff572b0d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.942976,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f0ce0d1f0f86e816bf6b0d65ff572b0d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615945,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0NX0.fhrxDlt4YVFFbf1JHh0ZCv6Q2wREbwsRWJEllizt-d8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f0ce0d1f0f86e816bf6b0d65ff572b0d","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc0202476-2f65-470b-ad40-2626e068e26f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"817e09de-e55b-4f03-b365-07086d7bd5dd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615945.4071329} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f0ce0d1f0f86e816bf6b0d65ff572b0d","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c02b97fa-584b-4c07-8d68-bb6cf1fe8921","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615945.412241} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"f0ce0d1f0f86e816bf6b0d65ff572b0d","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc0202476-2f65-470b-ad40-2626e068e26f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"8eedb30b-41e1-4503-bfa2-d9e8a8be8e79","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615945.422809} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"60949b95-43c2-4cde-893c-3138a68da28d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615945.4230764} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"f0ce0d1f0f86e816bf6b0d65ff572b0d","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc0202476-2f65-470b-ad40-2626e068e26f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc0202476-2f65-470b-ad40-2626e068e26f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:45.422774431Z"}]},"request_id":"539efcef-55f6-4693-a585-0f04a2cff2e7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615945.4271433} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f0ce0d1f0f86e816bf6b0d65ff572b0d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f0ce0d1f0f86e816bf6b0d65ff572b0d"} gateway-1 | {"time_local":"02/Aug/2024:16:25:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f0ce0d1f0f86e816bf6b0d65ff572b0d"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"f0ce0d1f0f86e816bf6b0d65ff572b0d","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0NX0.fhrxDlt4YVFFbf1JHh0ZCv6Q2wREbwsRWJEllizt-d8","level":"info","message":"auth send jwt","requestID":"0b591ffbd2f09eaebbea72f51be5e96a"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"0b591ffbd2f09eaebbea72f51be5e96a","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"0b591ffbd2f09eaebbea72f51be5e96a"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:45Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.232519,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:45Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0b591ffbd2f09eaebbea72f51be5e96a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615945,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0NX0.fhrxDlt4YVFFbf1JHh0ZCv6Q2wREbwsRWJEllizt-d8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0b591ffbd2f09eaebbea72f51be5e96a","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc0202476-2f65-470b-ad40-2626e068e26f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc0202476-2f65-470b-ad40-2626e068e26f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:45.422774431Z"}]},"request_id":"599b0c64-1a18-4161-bc61-1a7984aea530","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615945.9656634} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0b591ffbd2f09eaebbea72f51be5e96a","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fb8fa3d5-6878-4fea-9846-8f94a1009a99","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615945.972853} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"0b591ffbd2f09eaebbea72f51be5e96a","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc0202476-2f65-470b-ad40-2626e068e26f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc0202476-2f65-470b-ad40-2626e068e26f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:45.422774431Z"}]},"request_id":"44f6e401-f7e2-4a10-8706-96e8f4c4eb44","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615945.9867768} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0b591ffbd2f09eaebbea72f51be5e96a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"0b591ffbd2f09eaebbea72f51be5e96a"} gateway-1 | {"time_local":"02/Aug/2024:16:25:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c0202476-2f65-470b-ad40-2626e068e26f HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.047","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"0b591ffbd2f09eaebbea72f51be5e96a"} device-1 | {"level":"info","message":"PATCH /devices/c0202476-2f65-470b-ad40-2626e068e26f 200 39ms","method":"PATCH","requestID":"0b591ffbd2f09eaebbea72f51be5e96a","responseTime":39,"status":200,"url":"/devices/c0202476-2f65-470b-ad40-2626e068e26f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0NX0.fhrxDlt4YVFFbf1JHh0ZCv6Q2wREbwsRWJEllizt-d8","level":"info","message":"auth send jwt","requestID":"044ae34caf2465d1c0324ad7269607db"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"044ae34caf2465d1c0324ad7269607db","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"044ae34caf2465d1c0324ad7269607db"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.206288,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"044ae34caf2465d1c0324ad7269607db","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615945,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0NX0.fhrxDlt4YVFFbf1JHh0ZCv6Q2wREbwsRWJEllizt-d8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"044ae34caf2465d1c0324ad7269607db","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"044ae34caf2465d1c0324ad7269607db"} gateway-1 | {"time_local":"02/Aug/2024:16:25:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c0202476-2f65-470b-ad40-2626e068e26f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"044ae34caf2465d1c0324ad7269607db"} device-1 | {"level":"info","message":"POST /devices/c0202476-2f65-470b-ad40-2626e068e26f/websocket 200 22ms","method":"POST","requestID":"044ae34caf2465d1c0324ad7269607db","responseTime":22,"status":200,"url":"/devices/c0202476-2f65-470b-ad40-2626e068e26f/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"eb5edfaee1125e236195fac04c48b809","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":"eb5edfaee1125e236195fac04c48b809","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b4718011-0477-4019-a51e-c55b1c0cdd60/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":"eb5edfaee1125e236195fac04c48b809"} device-1 | {"level":"info","message":"OPTIONS /devices/b4718011-0477-4019-a51e-c55b1c0cdd60/websocket 200 1ms","method":"OPTIONS","requestID":"eb5edfaee1125e236195fac04c48b809","responseTime":1,"status":200,"url":"/devices/b4718011-0477-4019-a51e-c55b1c0cdd60/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0N30.kIb-49bkNoNySaflbPhL0HSDZMK2DN0Bu_V9wknmwMQ","level":"info","message":"auth send jwt","requestID":"a82ef0e860cfdc1ae665d47454236202"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a82ef0e860cfdc1ae665d47454236202","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a82ef0e860cfdc1ae665d47454236202"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.156028,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a82ef0e860cfdc1ae665d47454236202","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615947,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0N30.kIb-49bkNoNySaflbPhL0HSDZMK2DN0Bu_V9wknmwMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a82ef0e860cfdc1ae665d47454236202","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a82ef0e860cfdc1ae665d47454236202"} device-1 | {"level":"info","message":"POST /devices/b4718011-0477-4019-a51e-c55b1c0cdd60/websocket 200 23ms","method":"POST","requestID":"a82ef0e860cfdc1ae665d47454236202","responseTime":23,"status":200,"url":"/devices/b4718011-0477-4019-a51e-c55b1c0cdd60/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:25:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b4718011-0477-4019-a51e-c55b1c0cdd60/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":"a82ef0e860cfdc1ae665d47454236202"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8ad9493b7444077d04f8b9a9b3f49ca5","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":"8ad9493b7444077d04f8b9a9b3f49ca5","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b4718011-0477-4019-a51e-c55b1c0cdd60? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"8ad9493b7444077d04f8b9a9b3f49ca5"} device-1 | {"level":"info","message":"OPTIONS /devices/b4718011-0477-4019-a51e-c55b1c0cdd60? 200 1ms","method":"OPTIONS","requestID":"8ad9493b7444077d04f8b9a9b3f49ca5","responseTime":1,"status":200,"url":"/devices/b4718011-0477-4019-a51e-c55b1c0cdd60?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0N30.kIb-49bkNoNySaflbPhL0HSDZMK2DN0Bu_V9wknmwMQ","level":"info","message":"auth send jwt","requestID":"e2e7c3c088a65ec9ee73c8bb8df39d20"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e2e7c3c088a65ec9ee73c8bb8df39d20","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e2e7c3c088a65ec9ee73c8bb8df39d20"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.388784,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e2e7c3c088a65ec9ee73c8bb8df39d20","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615947,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0N30.kIb-49bkNoNySaflbPhL0HSDZMK2DN0Bu_V9wknmwMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e2e7c3c088a65ec9ee73c8bb8df39d20","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4718011-0477-4019-a51e-c55b1c0cdd60","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4718011-0477-4019-a51e-c55b1c0cdd60","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:45.373204820Z"}]},"request_id":"7552e74e-0621-4acb-b662-3c8ca33a899b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615947.5191004} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e2e7c3c088a65ec9ee73c8bb8df39d20","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ac5546e4-6466-4616-b559-5e85bb76eddf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615947.5268211} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e2e7c3c088a65ec9ee73c8bb8df39d20","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4718011-0477-4019-a51e-c55b1c0cdd60","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4718011-0477-4019-a51e-c55b1c0cdd60","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:45.373204820Z"}]},"request_id":"b1b199db-c485-45b7-9762-870e3456d38d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615947.53893} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e2e7c3c088a65ec9ee73c8bb8df39d20","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e2e7c3c088a65ec9ee73c8bb8df39d20"} gateway-1 | {"time_local":"02/Aug/2024:16:25:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b4718011-0477-4019-a51e-c55b1c0cdd60? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.044","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":"e2e7c3c088a65ec9ee73c8bb8df39d20"} device-1 | {"level":"info","message":"PATCH /devices/b4718011-0477-4019-a51e-c55b1c0cdd60? 200 38ms","method":"PATCH","requestID":"e2e7c3c088a65ec9ee73c8bb8df39d20","responseTime":38,"status":200,"url":"/devices/b4718011-0477-4019-a51e-c55b1c0cdd60?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0N30.kIb-49bkNoNySaflbPhL0HSDZMK2DN0Bu_V9wknmwMQ","level":"info","message":"auth send jwt","requestID":"dfa6f9129834a4792c0509a016db4612"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"dfa6f9129834a4792c0509a016db4612","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dfa6f9129834a4792c0509a016db4612"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.173713,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dfa6f9129834a4792c0509a016db4612","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615947,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0N30.kIb-49bkNoNySaflbPhL0HSDZMK2DN0Bu_V9wknmwMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"dfa6f9129834a4792c0509a016db4612","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4718011-0477-4019-a51e-c55b1c0cdd60","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4718011-0477-4019-a51e-c55b1c0cdd60","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:45.373204820Z"}]},"request_id":"18079011-1e24-4a1f-8e28-d7937bf7dfa3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615947.568427} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dfa6f9129834a4792c0509a016db4612","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dfa6f9129834a4792c0509a016db4612"} device-1 | {"level":"info","message":"GET /devices/b4718011-0477-4019-a51e-c55b1c0cdd60? 200 16ms","method":"GET","requestID":"dfa6f9129834a4792c0509a016db4612","responseTime":16,"status":200,"url":"/devices/b4718011-0477-4019-a51e-c55b1c0cdd60?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b4718011-0477-4019-a51e-c55b1c0cdd60? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dfa6f9129834a4792c0509a016db4612"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0N30.kIb-49bkNoNySaflbPhL0HSDZMK2DN0Bu_V9wknmwMQ","level":"info","message":"auth send jwt","requestID":"f3a1d625db6327dc05cd7696876ec60c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f3a1d625db6327dc05cd7696876ec60c","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f3a1d625db6327dc05cd7696876ec60c"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.361748,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f3a1d625db6327dc05cd7696876ec60c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615947,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0N30.kIb-49bkNoNySaflbPhL0HSDZMK2DN0Bu_V9wknmwMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f3a1d625db6327dc05cd7696876ec60c","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc0202476-2f65-470b-ad40-2626e068e26f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc0202476-2f65-470b-ad40-2626e068e26f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:45.422774431Z"}]},"request_id":"c443ece7-066e-4038-9c7b-09743f229770","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615947.5941389} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f3a1d625db6327dc05cd7696876ec60c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f3a1d625db6327dc05cd7696876ec60c"} gateway-1 | {"time_local":"02/Aug/2024:16:25:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c0202476-2f65-470b-ad40-2626e068e26f? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f3a1d625db6327dc05cd7696876ec60c"} device-1 | {"level":"info","message":"GET /devices/c0202476-2f65-470b-ad40-2626e068e26f? 200 17ms","method":"GET","requestID":"f3a1d625db6327dc05cd7696876ec60c","responseTime":17,"status":200,"url":"/devices/c0202476-2f65-470b-ad40-2626e068e26f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0N30.kIb-49bkNoNySaflbPhL0HSDZMK2DN0Bu_V9wknmwMQ","level":"info","message":"auth send jwt","requestID":"78fce8c9f0cf55df39be45a91ad07999"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"78fce8c9f0cf55df39be45a91ad07999","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"78fce8c9f0cf55df39be45a91ad07999"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.088676,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"78fce8c9f0cf55df39be45a91ad07999","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615947,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0N30.kIb-49bkNoNySaflbPhL0HSDZMK2DN0Bu_V9wknmwMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"78fce8c9f0cf55df39be45a91ad07999","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983"},"level":"info","message":"Attempting to run experiment","requestID":"78fce8c9f0cf55df39be45a91ad07999"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983"},"level":"info","message":"Attempting to book experiment","requestID":"78fce8c9f0cf55df39be45a91ad07999"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983"},"level":"info","message":"Successfully booked experiment","requestID":"78fce8c9f0cf55df39be45a91ad07999"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dff27440-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dff29b50-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.302419,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dff27440-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615947,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0N30.kIb-49bkNoNySaflbPhL0HSDZMK2DN0Bu_V9wknmwMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"dff27440-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35376","level":"info","msg":"Received request.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"client_addr":"127.0.0.1:35376","level":"info","msg":"Sent response.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.423946,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dff29b50-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615947,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0N30.kIb-49bkNoNySaflbPhL0HSDZMK2DN0Bu_V9wknmwMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"dff29b50-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4718011-0477-4019-a51e-c55b1c0cdd60","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4718011-0477-4019-a51e-c55b1c0cdd60","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:45.373204820Z"}]},"request_id":"669e823b-9fd5-4517-8099-a3edcb14d863","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615947.663354} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"dff27440-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc0202476-2f65-470b-ad40-2626e068e26f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc0202476-2f65-470b-ad40-2626e068e26f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:45.422774431Z"}]},"request_id":"96696d69-52c7-4659-a13d-1fc27469addb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615947.6671839} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dff27440-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dff29b50-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/b4718011-0477-4019-a51e-c55b1c0cdd60? 200 16ms","method":"GET","requestID":"dff27440-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/b4718011-0477-4019-a51e-c55b1c0cdd60?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dff29b50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/c0202476-2f65-470b-ad40-2626e068e26f? 200 17ms","method":"GET","requestID":"dff29b50-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/c0202476-2f65-470b-ad40-2626e068e26f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983"},"level":"info","message":"Setting up experiment","requestID":"78fce8c9f0cf55df39be45a91ad07999"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"78fce8c9f0cf55df39be45a91ad07999"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983"},"level":"info","message":"Successfully locked booking for experiment","requestID":"78fce8c9f0cf55df39be45a91ad07999"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"78fce8c9f0cf55df39be45a91ad07999"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"78fce8c9f0cf55df39be45a91ad07999"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983"},"level":"info","message":"Attempting to update booking for experiment","requestID":"78fce8c9f0cf55df39be45a91ad07999"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983"},"level":"info","message":"Successfully updated booking for experiment","requestID":"78fce8c9f0cf55df39be45a91ad07999"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983"},"level":"info","message":"Successfully set up experiment","requestID":"78fce8c9f0cf55df39be45a91ad07999"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dffcad70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dffcfb90-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dffd22a0-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983"},"level":"info","message":"Successfully running experiment","requestID":"78fce8c9f0cf55df39be45a91ad07999"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"client_addr":"127.0.0.1:35376","level":"info","msg":"Received request.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.743908,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"client_addr":"127.0.0.1:35376","level":"info","msg":"Sent response.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.349215,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dffcad70-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615947,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0N30.kIb-49bkNoNySaflbPhL0HSDZMK2DN0Bu_V9wknmwMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"dffcad70-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dffcfb90-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615947,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0N30.kIb-49bkNoNySaflbPhL0HSDZMK2DN0Bu_V9wknmwMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"dffcfb90-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35386","level":"info","msg":"Received request.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc0202476-2f65-470b-ad40-2626e068e26f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc0202476-2f65-470b-ad40-2626e068e26f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:45.422774431Z"}]},"request_id":"6a5f6339-6604-446b-af0d-b7a51725c0b1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615947.7310822} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4718011-0477-4019-a51e-c55b1c0cdd60","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b65d0f82-3997-44cf-a2f1-93a57373301e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615947.7314453} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"dffcfb90-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4718011-0477-4019-a51e-c55b1c0cdd60","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4718011-0477-4019-a51e-c55b1c0cdd60","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:45.373204820Z"}]},"request_id":"e8e07844-7c9d-4fba-9de6-07c0906343a7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615947.7323685} authorization-1 | {"client_addr":"127.0.0.1:35386","level":"info","msg":"Sent response.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.252388,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dffd22a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60","object_type":"device","rebac_allow":false,"scope_allow":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":"dffd22a0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"dffcad70-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dffcfb90-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/c0202476-2f65-470b-ad40-2626e068e26f? 200 16ms","method":"GET","requestID":"dffcfb90-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/c0202476-2f65-470b-ad40-2626e068e26f?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dffd22a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/b4718011-0477-4019-a51e-c55b1c0cdd60/signaling 200 16ms","method":"POST","requestID":"dffd22a0-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/b4718011-0477-4019-a51e-c55b1c0cdd60/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dffcad70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/b4718011-0477-4019-a51e-c55b1c0cdd60? 200 20ms","method":"GET","requestID":"dffcad70-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/b4718011-0477-4019-a51e-c55b1c0cdd60?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"dfffbab0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e00008d0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc0202476-2f65-470b-ad40-2626e068e26f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d673009d-d574-4486-981e-a3a6f6a86eb8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615947.7441425} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fdec2d154-7a7b-4a58-9d83-abf9e7691983#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fdec2d154-7a7b-4a58-9d83-abf9e7691983","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"a046d9b7-a8bb-482d-990b-0d8ef7ef4f7b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615947.744579} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e576b0d3-1c87-463e-9897-b609739d80b2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615947.7448478} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.55745,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"client_addr":"127.0.0.1:35376","level":"info","msg":"Received request.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dfffbab0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f","object_type":"device","rebac_allow":false,"scope_allow":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":"dfffbab0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"78fce8c9f0cf55df39be45a91ad07999","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:35376","level":"info","msg":"Sent response.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.7158,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4718011-0477-4019-a51e-c55b1c0cdd60","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"214ca3fc-6d2e-4510-b4f4-c746022a97be","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615947.747586} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e00008d0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60","object_type":"device","rebac_allow":false,"scope_allow":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":"e00008d0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"dfffbab0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c0202476-2f65-470b-ad40-2626e068e26f/signaling 200 12ms","method":"POST","requestID":"dfffbab0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/c0202476-2f65-470b-ad40-2626e068e26f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e00008d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/b4718011-0477-4019-a51e-c55b1c0cdd60/signaling 200 12ms","method":"POST","requestID":"e00008d0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/b4718011-0477-4019-a51e-c55b1c0cdd60/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"78fce8c9f0cf55df39be45a91ad07999"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e00252c0-50eb-11ef-8434-2f6d198c7397"} gateway-1 | {"time_local":"02/Aug/2024:16:25:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.156","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"78fce8c9f0cf55df39be45a91ad07999"} experiment-1 | {"level":"info","message":"POST /experiments? 201 149ms","method":"POST","requestID":"78fce8c9f0cf55df39be45a91ad07999","responseTime":149,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc0202476-2f65-470b-ad40-2626e068e26f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4c56190d-fae0-4ad3-984b-27c59b6e69c3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615947.7609205} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0N30.kIb-49bkNoNySaflbPhL0HSDZMK2DN0Bu_V9wknmwMQ","level":"info","message":"auth send jwt","requestID":"be84e4ee4499e678203367bb903845e9"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.763854,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:47Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"be84e4ee4499e678203367bb903845e9","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e00252c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f","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":"be84e4ee4499e678203367bb903845e9"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e00252c0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.659381,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:47Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e00252c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c0202476-2f65-470b-ad40-2626e068e26f/signaling 200 10ms","method":"POST","requestID":"e00252c0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/c0202476-2f65-470b-ad40-2626e068e26f/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"be84e4ee4499e678203367bb903845e9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615947,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0N30.kIb-49bkNoNySaflbPhL0HSDZMK2DN0Bu_V9wknmwMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"be84e4ee4499e678203367bb903845e9","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"78fce8c9f0cf55df39be45a91ad07999"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e0042780-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e0044e90-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4718011-0477-4019-a51e-c55b1c0cdd60","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4718011-0477-4019-a51e-c55b1c0cdd60","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:45.373204820Z"}]},"request_id":"33e5e859-bfa1-4e16-aa02-989f720a62d6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615947.7697916} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"be84e4ee4499e678203367bb903845e9","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.643101,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"client_addr":"127.0.0.1:35376","level":"info","msg":"Received request.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"client_addr":"127.0.0.1:35376","level":"info","msg":"Sent response.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.479432,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e0042780-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615947,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0N30.kIb-49bkNoNySaflbPhL0HSDZMK2DN0Bu_V9wknmwMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e0042780-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e0044e90-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615947,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0N30.kIb-49bkNoNySaflbPhL0HSDZMK2DN0Bu_V9wknmwMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e0044e90-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4718011-0477-4019-a51e-c55b1c0cdd60","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4718011-0477-4019-a51e-c55b1c0cdd60","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:45.373204820Z"}]},"request_id":"be901678-5c8c-43e6-93cf-5a5865f2a6c4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615947.7785962} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e0042780-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"be84e4ee4499e678203367bb903845e9"} gateway-1 | {"time_local":"02/Aug/2024:16:25:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b4718011-0477-4019-a51e-c55b1c0cdd60? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"be84e4ee4499e678203367bb903845e9"} device-1 | {"level":"info","message":"GET /devices/b4718011-0477-4019-a51e-c55b1c0cdd60? 200 19ms","method":"GET","requestID":"be84e4ee4499e678203367bb903845e9","responseTime":19,"status":200,"url":"/devices/b4718011-0477-4019-a51e-c55b1c0cdd60?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e0042780-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/b4718011-0477-4019-a51e-c55b1c0cdd60? 200 17ms","method":"GET","requestID":"e0042780-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/b4718011-0477-4019-a51e-c55b1c0cdd60?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0N30.kIb-49bkNoNySaflbPhL0HSDZMK2DN0Bu_V9wknmwMQ","level":"info","message":"auth send jwt","requestID":"2d3dee49de0c9f263c1195d4752adafc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2d3dee49de0c9f263c1195d4752adafc","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2d3dee49de0c9f263c1195d4752adafc"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc0202476-2f65-470b-ad40-2626e068e26f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc0202476-2f65-470b-ad40-2626e068e26f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:45.422774431Z"}]},"request_id":"26c545e5-8056-4c4f-b94e-93d73f1ff5fe","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615947.7834258} authorization-1 | {"level":"info","message":"POST /relations/query 200 12ms","method":"POST","requestID":"e0044e90-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.848108,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"2d3dee49de0c9f263c1195d4752adafc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615947,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0N30.kIb-49bkNoNySaflbPhL0HSDZMK2DN0Bu_V9wknmwMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2d3dee49de0c9f263c1195d4752adafc","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e0044e90-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/c0202476-2f65-470b-ad40-2626e068e26f? 200 27ms","method":"GET","requestID":"e0044e90-50eb-11ef-8434-2f6d198c7397","responseTime":27,"status":200,"url":"/devices/c0202476-2f65-470b-ad40-2626e068e26f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983"},"level":"info","message":"Building connection plan","requestID":"78fce8c9f0cf55df39be45a91ad07999"} 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":"a02f6252-881f-48fb-a489-fc38269b15f5"},{"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":"b50c0d38-ac35-469c-a6ca-4bd7a49a4d6a"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"9ba44dd5-59fd-4e05-b108-bbf67033f45a"}]},"level":"info","message":"Built pairwise service configurations","requestID":"78fce8c9f0cf55df39be45a91ad07999"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"78fce8c9f0cf55df39be45a91ad07999"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"e009f3e0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc0202476-2f65-470b-ad40-2626e068e26f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc0202476-2f65-470b-ad40-2626e068e26f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:45.422774431Z"}]},"request_id":"a0b706ec-5076-465c-bcb1-495dbfa3a46b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615947.8074524} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2d3dee49de0c9f263c1195d4752adafc","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.623431,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e009f3e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615947,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk0N30.kIb-49bkNoNySaflbPhL0HSDZMK2DN0Bu_V9wknmwMQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"e009f3e0-50eb-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2d3dee49de0c9f263c1195d4752adafc"} device-1 | {"level":"info","message":"GET /devices/c0202476-2f65-470b-ad40-2626e068e26f? 200 24ms","method":"GET","requestID":"2d3dee49de0c9f263c1195d4752adafc","responseTime":24,"status":200,"url":"/devices/c0202476-2f65-470b-ad40-2626e068e26f?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c0202476-2f65-470b-ad40-2626e068e26f? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.029","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2d3dee49de0c9f263c1195d4752adafc"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"6bb69b29-c0b6-488b-9f1d-9e7838160b51","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615947.8168259} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bd94965d-d898-400d-beb1-03af67ccfa80","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615947.8171012} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e009f3e0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"e009f3e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"e009f3e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/5f4d1b95-a841-4d3e-a195-90c06455c637'","requestID":"e009f3e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/5f4d1b95-a841-4d3e-a195-90c06455c637'","requestID":"e009f3e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"e009f3e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 24ms","method":"POST","requestID":"e009f3e0-50eb-11ef-8434-2f6d198c7397","responseTime":24,"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":"e009f3e0-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"78fce8c9f0cf55df39be45a91ad07999"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e011bc10-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4718011-0477-4019-a51e-c55b1c0cdd60","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2db3672a-9a80-4324-b843-76850c71f295","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615947.8620882} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.512874,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e011bc10-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60","object_type":"device","rebac_allow":false,"scope_allow":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":"e011bc10-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e011bc10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/b4718011-0477-4019-a51e-c55b1c0cdd60/signaling 200 8ms","method":"POST","requestID":"e011bc10-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/b4718011-0477-4019-a51e-c55b1c0cdd60/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e01342b0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc0202476-2f65-470b-ad40-2626e068e26f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2c0b5acc-bd90-4212-ae7c-4eee230ca527","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615947.8723683} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.103643,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e01342b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f","object_type":"device","rebac_allow":false,"scope_allow":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":"e01342b0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e01342b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c0202476-2f65-470b-ad40-2626e068e26f/signaling 200 9ms","method":"POST","requestID":"e01342b0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/c0202476-2f65-470b-ad40-2626e068e26f/signaling"} device-1 | {"device":"b4718011-0477-4019-a51e-c55b1c0cdd60","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"b4718011-0477-4019-a51e-c55b1c0cdd60","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 1891162669125526634 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:dsRI\r\na=ice-pwd:+1r96AHAlC3B63ahbxr4fwUy\r\na=ice-options:trickle\r\na=fingerprint:sha-256 BB:75:A1:67:76:9D:CB:7C:7F:DF:99:E3:9E:7D:6C:6C:B3:60:69:D6:3B:C2:71:F0:50:2D:D1:7D:27:08:19:0F\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"b4718011-0477-4019-a51e-c55b1c0cdd60","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"b4718011-0477-4019-a51e-c55b1c0cdd60","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"c0202476-2f65-470b-ad40-2626e068e26f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"5f4d1b95-a841-4d3e-a195-90c06455c637","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"c0202476-2f65-470b-ad40-2626e068e26f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c0202476-2f65-470b-ad40-2626e068e26f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c0202476-2f65-470b-ad40-2626e068e26f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c0202476-2f65-470b-ad40-2626e068e26f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/5f4d1b95-a841-4d3e-a195-90c06455c637' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5f4d1b95-a841-4d3e-a195-90c06455c637","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d4659b0445d27e7ee38eaabe47c48c79","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":"d4659b0445d27e7ee38eaabe47c48c79","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/5f4d1b95-a841-4d3e-a195-90c06455c637"}}},"level":"info","message":"received a callback","requestID":"d4659b0445d27e7ee38eaabe47c48c79"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"d4659b0445d27e7ee38eaabe47c48c79","responseTime":8,"status":200,"url":"/callbacks/experiment"} device-1 | {"content":{"candidate":"candidate:1171859520 1 udp 2113937151 3e73e3f9-0371-468d-9512-4cae1a588439.local 60756 typ host generation 0 ufrag dsRI network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b4718011-0477-4019-a51e-c55b1c0cdd60","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} gateway-1 | {"time_local":"02/Aug/2024:16:25:49 +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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"d4659b0445d27e7ee38eaabe47c48c79"} device-1 | {"content":{"candidate":"candidate:1087448856 1 udp 1677729535 141.24.211.56 60756 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag dsRI network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b4718011-0477-4019-a51e-c55b1c0cdd60","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:333224083 1 udp 33562623 141.24.210.113 54968 typ relay raddr 141.24.211.56 rport 60756 generation 0 ufrag dsRI network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b4718011-0477-4019-a51e-c55b1c0cdd60","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"b4718011-0477-4019-a51e-c55b1c0cdd60","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60'"} device-1 | {"data":{"peerconnection":"5f4d1b95-a841-4d3e-a195-90c06455c637","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"c0202476-2f65-470b-ad40-2626e068e26f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b4718011-0477-4019-a51e-c55b1c0cdd60","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"c0202476-2f65-470b-ad40-2626e068e26f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"5f4d1b95-a841-4d3e-a195-90c06455c637","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/5f4d1b95-a841-4d3e-a195-90c06455c637' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5f4d1b95-a841-4d3e-a195-90c06455c637","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d4327b7eba538d334aca534f8545dece","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":"d4327b7eba538d334aca534f8545dece","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/5f4d1b95-a841-4d3e-a195-90c06455c637"}}},"level":"info","message":"received a callback","requestID":"d4327b7eba538d334aca534f8545dece"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"e1538ae0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:49Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5f4d1b95-a841-4d3e-a195-90c06455c637","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fa4c1186-dec4-48f7-98f7-8b047ce432bf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615949.9716282} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.415131,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5f4d1b95-a841-4d3e-a195-90c06455c637","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e1538ae0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/5f4d1b95-a841-4d3e-a195-90c06455c637","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":"e1538ae0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"e1538ae0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/5f4d1b95-a841-4d3e-a195-90c06455c637 200 9ms","method":"GET","requestID":"e1538ae0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/peerconnections/5f4d1b95-a841-4d3e-a195-90c06455c637"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"d4327b7eba538d334aca534f8545dece","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:49 +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":"d4327b7eba538d334aca534f8545dece"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e1575b70-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:49Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc0202476-2f65-470b-ad40-2626e068e26f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"073281b0-b9a2-40e2-b337-8aa26276c678","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615949.9978428} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.584379,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e1575b70-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f","object_type":"device","rebac_allow":false,"scope_allow":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":"e1575b70-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e1575b70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c0202476-2f65-470b-ad40-2626e068e26f/signaling 200 13ms","method":"POST","requestID":"e1575b70-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/c0202476-2f65-470b-ad40-2626e068e26f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e159cc70-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:50Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4718011-0477-4019-a51e-c55b1c0cdd60","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"004efc80-4f94-49e8-a916-78d8fa92ae82","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615950.013922} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.922335,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e159cc70-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60","object_type":"device","rebac_allow":false,"scope_allow":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":"e159cc70-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e159cc70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/b4718011-0477-4019-a51e-c55b1c0cdd60/signaling 200 13ms","method":"POST","requestID":"e159cc70-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/b4718011-0477-4019-a51e-c55b1c0cdd60/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1MH0.GjNGbelXrK-oCsj7bxMwGr4NzoakpMEjfWgG-5tbgLM","level":"info","message":"auth send jwt","requestID":"fe16aad1cfd09f2ce32addb0fa402cb1"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"fe16aad1cfd09f2ce32addb0fa402cb1","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983","requestID":"fe16aad1cfd09f2ce32addb0fa402cb1"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.250697,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fe16aad1cfd09f2ce32addb0fa402cb1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615950,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1MH0.GjNGbelXrK-oCsj7bxMwGr4NzoakpMEjfWgG-5tbgLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fe16aad1cfd09f2ce32addb0fa402cb1","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983","requestID":"fe16aad1cfd09f2ce32addb0fa402cb1"} experiment-1 | {"level":"info","message":"GET /experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983 200 15ms","method":"GET","requestID":"fe16aad1cfd09f2ce32addb0fa402cb1","responseTime":15,"status":200,"url":"/experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983"} gateway-1 | {"time_local":"02/Aug/2024:16:25:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983 HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fe16aad1cfd09f2ce32addb0fa402cb1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1MH0.GjNGbelXrK-oCsj7bxMwGr4NzoakpMEjfWgG-5tbgLM","level":"info","message":"auth send jwt","requestID":"8d31e5c91d5bdf3d38a45d49404a2469"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8d31e5c91d5bdf3d38a45d49404a2469","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983","requestID":"8d31e5c91d5bdf3d38a45d49404a2469"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.225721,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:50Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"8d31e5c91d5bdf3d38a45d49404a2469","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615950,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1MH0.GjNGbelXrK-oCsj7bxMwGr4NzoakpMEjfWgG-5tbgLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8d31e5c91d5bdf3d38a45d49404a2469","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983"},"level":"info","message":"Attempting to finish experiment","requestID":"8d31e5c91d5bdf3d38a45d49404a2469"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"e1682450-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.684055,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:50Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5f4d1b95-a841-4d3e-a195-90c06455c637","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e1682450-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/5f4d1b95-a841-4d3e-a195-90c06455c637","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615950,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1MH0.GjNGbelXrK-oCsj7bxMwGr4NzoakpMEjfWgG-5tbgLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e1682450-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/5f4d1b95-a841-4d3e-a195-90c06455c637","device":"b4718011-0477-4019-a51e-c55b1c0cdd60","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"c0202476-2f65-470b-ad40-2626e068e26f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c0202476-2f65-470b-ad40-2626e068e26f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c0202476-2f65-470b-ad40-2626e068e26f","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/5f4d1b95-a841-4d3e-a195-90c06455c637' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/5f4d1b95-a841-4d3e-a195-90c06455c637' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5f4d1b95-a841-4d3e-a195-90c06455c637","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5f4d1b95-a841-4d3e-a195-90c06455c637': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5f4d1b95-a841-4d3e-a195-90c06455c637","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"67f2ac8c-4b9a-4313-b403-732b02177ab1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615950.1255832} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9ed3c385f319c8e538ed6bbac7480c7b","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":"9ed3c385f319c8e538ed6bbac7480c7b","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9fbac0a14948a646694536e3042ce3de","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"97acf58b-8e23-4784-b690-fa5036727d8c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615950.1277282} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5f4d1b95-a841-4d3e-a195-90c06455c637"}}},"level":"info","message":"received a callback","requestID":"9ed3c385f319c8e538ed6bbac7480c7b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9fbac0a14948a646694536e3042ce3de","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"e1682450-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/relations/update"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5f4d1b95-a841-4d3e-a195-90c06455c637"}}},"level":"info","message":"received a callback","requestID":"9fbac0a14948a646694536e3042ce3de"} device-1 | {"data":{"peerconnection":"5f4d1b95-a841-4d3e-a195-90c06455c637","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"e1682450-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/5f4d1b95-a841-4d3e-a195-90c06455c637 204 52ms","method":"DELETE","requestID":"e1682450-50eb-11ef-8434-2f6d198c7397","responseTime":52,"status":204,"url":"/peerconnections/5f4d1b95-a841-4d3e-a195-90c06455c637"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983"},"level":"info","message":"Successfully finished experiment","requestID":"8d31e5c91d5bdf3d38a45d49404a2469"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e173bd10-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:50Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc0202476-2f65-470b-ad40-2626e068e26f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c886ab1c-433a-4835-b1d9-257951a135b5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615950.1841333} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.736686,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e173bd10-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c0202476-2f65-470b-ad40-2626e068e26f","object_type":"device","rebac_allow":false,"scope_allow":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":"e173bd10-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e173bd10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c0202476-2f65-470b-ad40-2626e068e26f/signaling 200 12ms","method":"POST","requestID":"e173bd10-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/c0202476-2f65-470b-ad40-2626e068e26f/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fdec2d154-7a7b-4a58-9d83-abf9e7691983': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fdec2d154-7a7b-4a58-9d83-abf9e7691983","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"4e3bf5f8-0eb9-4d52-a616-99d959edc737","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615950.1912355} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"840be754-ac4e-4272-b5e7-2129479c6967","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615950.191537} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e1760700-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"8d31e5c91d5bdf3d38a45d49404a2469","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:50Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4718011-0477-4019-a51e-c55b1c0cdd60","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cd5cccc5-9c8b-4599-80f0-bda7805e3cac","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615950.198979} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.000044,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e1760700-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b4718011-0477-4019-a51e-c55b1c0cdd60","object_type":"device","rebac_allow":false,"scope_allow":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":"e1760700-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e1760700-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/b4718011-0477-4019-a51e-c55b1c0cdd60/signaling 200 14ms","method":"POST","requestID":"e1760700-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/b4718011-0477-4019-a51e-c55b1c0cdd60/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983","requestID":"8d31e5c91d5bdf3d38a45d49404a2469"} gateway-1 | {"time_local":"02/Aug/2024:16:25:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.186","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8d31e5c91d5bdf3d38a45d49404a2469"} experiment-1 | {"level":"info","message":"DELETE /experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983 204 180ms","method":"DELETE","requestID":"8d31e5c91d5bdf3d38a45d49404a2469","responseTime":180,"status":204,"url":"/experiments/dec2d154-7a7b-4a58-9d83-abf9e7691983"} gateway-1 | {"time_local":"02/Aug/2024:16:25:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3661","request_time":"4.242","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"9234c21e3baa2e979017a1aaa4131efe"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 137ms","method":"POST","requestID":"9ed3c385f319c8e538ed6bbac7480c7b","responseTime":137,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:50 +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":"9ed3c385f319c8e538ed6bbac7480c7b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 135ms","method":"POST","requestID":"9fbac0a14948a646694536e3042ce3de","responseTime":135,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:50 +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":"9fbac0a14948a646694536e3042ce3de"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1MH0.GjNGbelXrK-oCsj7bxMwGr4NzoakpMEjfWgG-5tbgLM","level":"info","message":"auth send jwt","requestID":"a3e643cadef3325ae020f645bf71f962"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a3e643cadef3325ae020f645bf71f962","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a3e643cadef3325ae020f645bf71f962"} gateway-1 | {"time_local":"02/Aug/2024:16:25:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3127","request_time":"2.817","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":"dbbd193dc537d7056103fa64be85036d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.141606,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a3e643cadef3325ae020f645bf71f962","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615950,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1MH0.GjNGbelXrK-oCsj7bxMwGr4NzoakpMEjfWgG-5tbgLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a3e643cadef3325ae020f645bf71f962","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/c0202476-2f65-470b-ad40-2626e068e26f' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffbbd8c8d-88ec-415c-9fa4-dd759e76d95f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3ad86b9b-fd57-40c4-989a-5bfc3ff6f6ba","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615950.293865} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a3e643cadef3325ae020f645bf71f962","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/b4718011-0477-4019-a51e-c55b1c0cdd60' 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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"33e3a727-76e4-4394-b34b-aeb700235b0c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615950.298629} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a3e643cadef3325ae020f645bf71f962","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffbbd8c8d-88ec-415c-9fa4-dd759e76d95f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"7c9eadbf-3800-4c44-a14d-264d60db9b8c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615950.3130395} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"698aa9fc-62c0-462a-9b20-d2c2cb3045c6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615950.3131707} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"a3e643cadef3325ae020f645bf71f962","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffbbd8c8d-88ec-415c-9fa4-dd759e76d95f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffbbd8c8d-88ec-415c-9fa4-dd759e76d95f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:50.313009208Z"}]},"request_id":"95d3e191-2e51-4922-ab56-384977401942","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615950.3174696} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a3e643cadef3325ae020f645bf71f962","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a3e643cadef3325ae020f645bf71f962"} gateway-1 | {"time_local":"02/Aug/2024:16:25:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a3e643cadef3325ae020f645bf71f962"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"a3e643cadef3325ae020f645bf71f962","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1MH0.GjNGbelXrK-oCsj7bxMwGr4NzoakpMEjfWgG-5tbgLM","level":"info","message":"auth send jwt","requestID":"16689f41d94cb56834c646cc91ab4f3c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"16689f41d94cb56834c646cc91ab4f3c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"16689f41d94cb56834c646cc91ab4f3c"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.662624,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"16689f41d94cb56834c646cc91ab4f3c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615950,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1MH0.GjNGbelXrK-oCsj7bxMwGr4NzoakpMEjfWgG-5tbgLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"16689f41d94cb56834c646cc91ab4f3c","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c83f147-c0ed-49f3-9bb0-c193272e4f3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6327c2af-b8cf-4f0a-b361-0afd4bcb580b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615950.343832} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"16689f41d94cb56834c646cc91ab4f3c","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3e0f1631-b053-45a7-9fef-85f4e249c673","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615950.3489122} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"16689f41d94cb56834c646cc91ab4f3c","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c83f147-c0ed-49f3-9bb0-c193272e4f3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"ccce5fa7-9885-4fa7-a12c-d3be66833e1e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615950.359755} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2aa07b48-2512-4be6-95ed-3309dd906a49","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615950.36} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"16689f41d94cb56834c646cc91ab4f3c","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c83f147-c0ed-49f3-9bb0-c193272e4f3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c83f147-c0ed-49f3-9bb0-c193272e4f3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:50.359720123Z"}]},"request_id":"1571aba1-13b9-44b4-9300-5e803c55bbf7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615950.3649216} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"16689f41d94cb56834c646cc91ab4f3c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"16689f41d94cb56834c646cc91ab4f3c"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"16689f41d94cb56834c646cc91ab4f3c","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"16689f41d94cb56834c646cc91ab4f3c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1MH0.GjNGbelXrK-oCsj7bxMwGr4NzoakpMEjfWgG-5tbgLM","level":"info","message":"auth send jwt","requestID":"68f6a4895a646c6015064d78e03d33b1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"68f6a4895a646c6015064d78e03d33b1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"68f6a4895a646c6015064d78e03d33b1"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.222811,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"68f6a4895a646c6015064d78e03d33b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615950,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1MH0.GjNGbelXrK-oCsj7bxMwGr4NzoakpMEjfWgG-5tbgLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"68f6a4895a646c6015064d78e03d33b1","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffbbd8c8d-88ec-415c-9fa4-dd759e76d95f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffbbd8c8d-88ec-415c-9fa4-dd759e76d95f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:50.313009208Z"}]},"request_id":"a247ccad-62df-4efe-9f33-d59adf122a2d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615950.8823166} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"68f6a4895a646c6015064d78e03d33b1","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6c92479b-0e2f-4b78-b5e8-10b322ba7609","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615950.8871589} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"68f6a4895a646c6015064d78e03d33b1","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffbbd8c8d-88ec-415c-9fa4-dd759e76d95f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffbbd8c8d-88ec-415c-9fa4-dd759e76d95f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:50.313009208Z"}]},"request_id":"48e84b2a-8827-4517-bc4a-3375ad1c5f0a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615950.900408} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"68f6a4895a646c6015064d78e03d33b1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"68f6a4895a646c6015064d78e03d33b1"} device-1 | {"level":"info","message":"PATCH /devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f 200 31ms","method":"PATCH","requestID":"68f6a4895a646c6015064d78e03d33b1","responseTime":31,"status":200,"url":"/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f"} gateway-1 | {"time_local":"02/Aug/2024:16:25:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.035","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"68f6a4895a646c6015064d78e03d33b1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1MH0.GjNGbelXrK-oCsj7bxMwGr4NzoakpMEjfWgG-5tbgLM","level":"info","message":"auth send jwt","requestID":"3fe05c0a7038238d33f79023ea0a70ea"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3fe05c0a7038238d33f79023ea0a70ea","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3fe05c0a7038238d33f79023ea0a70ea"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:50Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.964847,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"3fe05c0a7038238d33f79023ea0a70ea","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615950,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1MH0.GjNGbelXrK-oCsj7bxMwGr4NzoakpMEjfWgG-5tbgLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3fe05c0a7038238d33f79023ea0a70ea","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3fe05c0a7038238d33f79023ea0a70ea"} gateway-1 | {"time_local":"02/Aug/2024:16:25:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"3fe05c0a7038238d33f79023ea0a70ea"} device-1 | {"level":"info","message":"POST /devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f/websocket 200 18ms","method":"POST","requestID":"3fe05c0a7038238d33f79023ea0a70ea","responseTime":18,"status":200,"url":"/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"76fcad5c7efb11c962edf1c84b56c92e","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":"76fcad5c7efb11c962edf1c84b56c92e","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e/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":"76fcad5c7efb11c962edf1c84b56c92e"} device-1 | {"level":"info","message":"OPTIONS /devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e/websocket 200 2ms","method":"OPTIONS","requestID":"76fcad5c7efb11c962edf1c84b56c92e","responseTime":2,"status":200,"url":"/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1Mn0.B0zNPKovhlX85FEdfuztZbu8mEBd56sk1kOg__-2BAc","level":"info","message":"auth send jwt","requestID":"028e68b00cf5386cd6d470e74a767b3e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"028e68b00cf5386cd6d470e74a767b3e","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"028e68b00cf5386cd6d470e74a767b3e"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.385807,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"028e68b00cf5386cd6d470e74a767b3e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615952,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1Mn0.B0zNPKovhlX85FEdfuztZbu8mEBd56sk1kOg__-2BAc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"028e68b00cf5386cd6d470e74a767b3e","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"028e68b00cf5386cd6d470e74a767b3e"} device-1 | {"level":"info","message":"POST /devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e/websocket 200 22ms","method":"POST","requestID":"028e68b00cf5386cd6d470e74a767b3e","responseTime":22,"status":200,"url":"/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:25:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e/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":"028e68b00cf5386cd6d470e74a767b3e"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9b1fc4440bc9acca24b74b3aa6ecced9","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":"9b1fc4440bc9acca24b74b3aa6ecced9","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e? 200 1ms","method":"OPTIONS","requestID":"9b1fc4440bc9acca24b74b3aa6ecced9","responseTime":1,"status":200,"url":"/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"9b1fc4440bc9acca24b74b3aa6ecced9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1Mn0.B0zNPKovhlX85FEdfuztZbu8mEBd56sk1kOg__-2BAc","level":"info","message":"auth send jwt","requestID":"b547d96e2adf8b49a5f10f3d35e3abfb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b547d96e2adf8b49a5f10f3d35e3abfb","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b547d96e2adf8b49a5f10f3d35e3abfb"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.22044,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b547d96e2adf8b49a5f10f3d35e3abfb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615952,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1Mn0.B0zNPKovhlX85FEdfuztZbu8mEBd56sk1kOg__-2BAc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b547d96e2adf8b49a5f10f3d35e3abfb","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c83f147-c0ed-49f3-9bb0-c193272e4f3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c83f147-c0ed-49f3-9bb0-c193272e4f3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:50.359720123Z"}]},"request_id":"281506fa-058e-4bb8-9920-a1a7254a6d0e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615952.4976811} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b547d96e2adf8b49a5f10f3d35e3abfb","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f0c34767-8d03-42cd-aa09-9aaaaa43879b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615952.5055623} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"b547d96e2adf8b49a5f10f3d35e3abfb","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c83f147-c0ed-49f3-9bb0-c193272e4f3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c83f147-c0ed-49f3-9bb0-c193272e4f3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:50.359720123Z"}]},"request_id":"47061dbf-39de-4b2e-a2eb-62cbdb520b1f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615952.515989} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b547d96e2adf8b49a5f10f3d35e3abfb","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b547d96e2adf8b49a5f10f3d35e3abfb"} gateway-1 | {"time_local":"02/Aug/2024:16:25:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"b547d96e2adf8b49a5f10f3d35e3abfb"} device-1 | {"level":"info","message":"PATCH /devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e? 200 35ms","method":"PATCH","requestID":"b547d96e2adf8b49a5f10f3d35e3abfb","responseTime":35,"status":200,"url":"/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1Mn0.B0zNPKovhlX85FEdfuztZbu8mEBd56sk1kOg__-2BAc","level":"info","message":"auth send jwt","requestID":"94d8e0ed2cfaa48ec23ccf0c8c1b265a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"94d8e0ed2cfaa48ec23ccf0c8c1b265a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"94d8e0ed2cfaa48ec23ccf0c8c1b265a"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.297123,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"94d8e0ed2cfaa48ec23ccf0c8c1b265a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615952,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1Mn0.B0zNPKovhlX85FEdfuztZbu8mEBd56sk1kOg__-2BAc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"94d8e0ed2cfaa48ec23ccf0c8c1b265a","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffbbd8c8d-88ec-415c-9fa4-dd759e76d95f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffbbd8c8d-88ec-415c-9fa4-dd759e76d95f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:50.313009208Z"}]},"request_id":"017c5ee8-d63d-485c-8272-71c8fc0d2d1f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615952.5443149} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"94d8e0ed2cfaa48ec23ccf0c8c1b265a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"94d8e0ed2cfaa48ec23ccf0c8c1b265a"} gateway-1 | {"time_local":"02/Aug/2024:16:25:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"94d8e0ed2cfaa48ec23ccf0c8c1b265a"} device-1 | {"level":"info","message":"GET /devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f? 200 17ms","method":"GET","requestID":"94d8e0ed2cfaa48ec23ccf0c8c1b265a","responseTime":17,"status":200,"url":"/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1Mn0.B0zNPKovhlX85FEdfuztZbu8mEBd56sk1kOg__-2BAc","level":"info","message":"auth send jwt","requestID":"81bbebe5394f2fc5314c073bef220532"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"81bbebe5394f2fc5314c073bef220532","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"81bbebe5394f2fc5314c073bef220532"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.101717,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"81bbebe5394f2fc5314c073bef220532","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615952,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1Mn0.B0zNPKovhlX85FEdfuztZbu8mEBd56sk1kOg__-2BAc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"81bbebe5394f2fc5314c073bef220532","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c83f147-c0ed-49f3-9bb0-c193272e4f3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c83f147-c0ed-49f3-9bb0-c193272e4f3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:50.359720123Z"}]},"request_id":"9a7ef2a9-4a9a-4c7f-aa6c-55a100bd1a72","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615952.5669556} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"81bbebe5394f2fc5314c073bef220532","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"81bbebe5394f2fc5314c073bef220532"} gateway-1 | {"time_local":"02/Aug/2024:16:25:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"81bbebe5394f2fc5314c073bef220532"} device-1 | {"level":"info","message":"GET /devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e? 200 13ms","method":"GET","requestID":"81bbebe5394f2fc5314c073bef220532","responseTime":13,"status":200,"url":"/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1Mn0.B0zNPKovhlX85FEdfuztZbu8mEBd56sk1kOg__-2BAc","level":"info","message":"auth send jwt","requestID":"3bef211f32500e537cddf96a08765e36"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3bef211f32500e537cddf96a08765e36","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"3bef211f32500e537cddf96a08765e36"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.150616,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"3bef211f32500e537cddf96a08765e36","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615952,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1Mn0.B0zNPKovhlX85FEdfuztZbu8mEBd56sk1kOg__-2BAc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3bef211f32500e537cddf96a08765e36","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a16be45-b2c7-45df-bd06-c614e15594f1"},"level":"info","message":"Attempting to run experiment","requestID":"3bef211f32500e537cddf96a08765e36"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a16be45-b2c7-45df-bd06-c614e15594f1"},"level":"info","message":"Attempting to book experiment","requestID":"3bef211f32500e537cddf96a08765e36"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a16be45-b2c7-45df-bd06-c614e15594f1"},"level":"info","message":"Successfully booked experiment","requestID":"3bef211f32500e537cddf96a08765e36"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e2e8f7f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e2e94610-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.699164,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e2e8f7f0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615952,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1Mn0.B0zNPKovhlX85FEdfuztZbu8mEBd56sk1kOg__-2BAc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e2e8f7f0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58296","level":"info","msg":"Received request.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58296","level":"info","msg":"Sent response.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.329706,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e2e94610-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615952,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1Mn0.B0zNPKovhlX85FEdfuztZbu8mEBd56sk1kOg__-2BAc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e2e94610-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffbbd8c8d-88ec-415c-9fa4-dd759e76d95f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffbbd8c8d-88ec-415c-9fa4-dd759e76d95f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:50.313009208Z"}]},"request_id":"bacdfa03-932e-41ae-a3b8-cdba2b8bd983","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615952.6321342} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e2e8f7f0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c83f147-c0ed-49f3-9bb0-c193272e4f3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c83f147-c0ed-49f3-9bb0-c193272e4f3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:50.359720123Z"}]},"request_id":"64b15a8f-60d0-4c4b-9046-5436f3691a10","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615952.6355326} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e2e8f7f0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e2e94610-50eb-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f? 200 14ms","method":"GET","requestID":"e2e8f7f0-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e2e94610-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e? 200 17ms","method":"GET","requestID":"e2e94610-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a16be45-b2c7-45df-bd06-c614e15594f1"},"level":"info","message":"Setting up experiment","requestID":"3bef211f32500e537cddf96a08765e36"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a16be45-b2c7-45df-bd06-c614e15594f1"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"3bef211f32500e537cddf96a08765e36"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a16be45-b2c7-45df-bd06-c614e15594f1"},"level":"info","message":"Successfully locked booking for experiment","requestID":"3bef211f32500e537cddf96a08765e36"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a16be45-b2c7-45df-bd06-c614e15594f1"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"3bef211f32500e537cddf96a08765e36"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a16be45-b2c7-45df-bd06-c614e15594f1"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"3bef211f32500e537cddf96a08765e36"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a16be45-b2c7-45df-bd06-c614e15594f1"},"level":"info","message":"Attempting to update booking for experiment","requestID":"3bef211f32500e537cddf96a08765e36"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a16be45-b2c7-45df-bd06-c614e15594f1"},"level":"info","message":"Successfully updated booking for experiment","requestID":"3bef211f32500e537cddf96a08765e36"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a16be45-b2c7-45df-bd06-c614e15594f1"},"level":"info","message":"Successfully set up experiment","requestID":"3bef211f32500e537cddf96a08765e36"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e2f490b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e2f4ded0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e2f505e0-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a16be45-b2c7-45df-bd06-c614e15594f1"},"level":"info","message":"Successfully running experiment","requestID":"3bef211f32500e537cddf96a08765e36"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.729551,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e2f490b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615952,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1Mn0.B0zNPKovhlX85FEdfuztZbu8mEBd56sk1kOg__-2BAc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e2f490b0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58296","level":"info","msg":"Received request.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58296","level":"info","msg":"Sent response.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.612766,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e2f4ded0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615952,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1Mn0.B0zNPKovhlX85FEdfuztZbu8mEBd56sk1kOg__-2BAc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e2f4ded0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58300","level":"info","msg":"Received request.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c83f147-c0ed-49f3-9bb0-c193272e4f3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c83f147-c0ed-49f3-9bb0-c193272e4f3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:50.359720123Z"}]},"request_id":"87b74cbd-8a37-48ea-8d60-035a3d99530b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615952.7090836} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffbbd8c8d-88ec-415c-9fa4-dd759e76d95f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4949dafa-49f1-4193-9798-e87b5646fc99","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615952.7092974} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e2f4ded0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffbbd8c8d-88ec-415c-9fa4-dd759e76d95f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffbbd8c8d-88ec-415c-9fa4-dd759e76d95f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:50.313009208Z"}]},"request_id":"e9788af1-887c-4147-956b-f9bd9906ce9d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615952.710055} authorization-1 | {"client_addr":"127.0.0.1:58300","level":"info","msg":"Sent response.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.22132,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e2f505e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","object_type":"device","rebac_allow":false,"scope_allow":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":"e2f505e0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e2f490b0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e2f505e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f/signaling 200 15ms","method":"POST","requestID":"e2f505e0-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e2f4ded0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e? 200 17ms","method":"GET","requestID":"e2f4ded0-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e2f490b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f? 200 21ms","method":"GET","requestID":"e2f490b0-50eb-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e2f7ec10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e2f86140-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8a16be45-b2c7-45df-bd06-c614e15594f1#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8a16be45-b2c7-45df-bd06-c614e15594f1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"44e1740d-3e7e-4579-bcfb-fdc5ea9a5fa0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615952.7240796} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f076c992-e936-44e3-bbcd-01b7ae4b44a5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615952.7242978} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"3bef211f32500e537cddf96a08765e36","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.2913,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58296","level":"info","msg":"Received request.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c83f147-c0ed-49f3-9bb0-c193272e4f3e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3adae02f-3f40-49a6-82de-92598c877fa2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615952.728822} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e2f7ec10-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e","object_type":"device","rebac_allow":false,"scope_allow":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":"e2f7ec10-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffbbd8c8d-88ec-415c-9fa4-dd759e76d95f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a6fe4ed5-6a5a-49e4-a61c-95ca5fc475ea","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615952.734024} authorization-1 | {"client_addr":"127.0.0.1:58296","level":"info","msg":"Sent response.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.700577,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e2f86140-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","object_type":"device","rebac_allow":false,"scope_allow":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":"e2f86140-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/8a16be45-b2c7-45df-bd06-c614e15594f1","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"3bef211f32500e537cddf96a08765e36"} gateway-1 | {"time_local":"02/Aug/2024:16:25:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.164","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3bef211f32500e537cddf96a08765e36"} experiment-1 | {"level":"info","message":"POST /experiments? 201 157ms","method":"POST","requestID":"3bef211f32500e537cddf96a08765e36","responseTime":157,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e2f7ec10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e/signaling 200 17ms","method":"POST","requestID":"e2f7ec10-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e2f86140-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f/signaling 200 17ms","method":"POST","requestID":"e2f86140-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1Mn0.B0zNPKovhlX85FEdfuztZbu8mEBd56sk1kOg__-2BAc","level":"info","message":"auth send jwt","requestID":"b8c6b512e2c9ed4c63383fbd6dfd902f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b8c6b512e2c9ed4c63383fbd6dfd902f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e2fb4770-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b8c6b512e2c9ed4c63383fbd6dfd902f"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58296","level":"info","msg":"Received request.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58296","level":"info","msg":"Sent response.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.966594,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b8c6b512e2c9ed4c63383fbd6dfd902f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615952,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1Mn0.B0zNPKovhlX85FEdfuztZbu8mEBd56sk1kOg__-2BAc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b8c6b512e2c9ed4c63383fbd6dfd902f","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c83f147-c0ed-49f3-9bb0-c193272e4f3e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7d7ea8a3-92bb-4a87-98ec-f3d19b80ff03","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615952.749408} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.531961,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e2fb4770-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e","object_type":"device","rebac_allow":false,"scope_allow":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":"e2fb4770-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffbbd8c8d-88ec-415c-9fa4-dd759e76d95f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffbbd8c8d-88ec-415c-9fa4-dd759e76d95f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:50.313009208Z"}]},"request_id":"ed90f4da-ab7a-41da-a470-e8ff0e7dec8e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615952.7550097} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e2fb4770-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e/signaling 200 13ms","method":"POST","requestID":"e2fb4770-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b8c6b512e2c9ed4c63383fbd6dfd902f","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a16be45-b2c7-45df-bd06-c614e15594f1"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"3bef211f32500e537cddf96a08765e36"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e2fdb870-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e2fddf80-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b8c6b512e2c9ed4c63383fbd6dfd902f"} gateway-1 | {"time_local":"02/Aug/2024:16:25:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b8c6b512e2c9ed4c63383fbd6dfd902f"} device-1 | {"level":"info","message":"GET /devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f? 200 17ms","method":"GET","requestID":"b8c6b512e2c9ed4c63383fbd6dfd902f","responseTime":17,"status":200,"url":"/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.283147,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58296","level":"info","msg":"Received request.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e2fdb870-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615952,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1Mn0.B0zNPKovhlX85FEdfuztZbu8mEBd56sk1kOg__-2BAc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e2fdb870-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58296","level":"info","msg":"Sent response.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.23478,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e2fddf80-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615952,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1Mn0.B0zNPKovhlX85FEdfuztZbu8mEBd56sk1kOg__-2BAc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e2fddf80-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1Mn0.B0zNPKovhlX85FEdfuztZbu8mEBd56sk1kOg__-2BAc","level":"info","message":"auth send jwt","requestID":"b2440a508505f52af1da3a79ef0ca07b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b2440a508505f52af1da3a79ef0ca07b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b2440a508505f52af1da3a79ef0ca07b"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffbbd8c8d-88ec-415c-9fa4-dd759e76d95f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffbbd8c8d-88ec-415c-9fa4-dd759e76d95f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:50.313009208Z"}]},"request_id":"822494f4-2633-4eb1-9cf9-5c9297fde872","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615952.769426} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e2fdb870-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c83f147-c0ed-49f3-9bb0-c193272e4f3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c83f147-c0ed-49f3-9bb0-c193272e4f3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:50.359720123Z"}]},"request_id":"59f32f1d-84ec-4800-99b5-034aa11811f7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615952.7708695} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e2fddf80-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e2fdb870-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.907968,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:52Z"} device-1 | {"level":"info","message":"GET /devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f? 200 15ms","method":"GET","requestID":"e2fdb870-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b2440a508505f52af1da3a79ef0ca07b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615952,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1Mn0.B0zNPKovhlX85FEdfuztZbu8mEBd56sk1kOg__-2BAc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b2440a508505f52af1da3a79ef0ca07b","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e2fddf80-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e? 200 18ms","method":"GET","requestID":"e2fddf80-50eb-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c83f147-c0ed-49f3-9bb0-c193272e4f3e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c83f147-c0ed-49f3-9bb0-c193272e4f3e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:50.359720123Z"}]},"request_id":"0224f6d0-1732-4818-b002-e41a22fb7075","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615952.7788534} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a16be45-b2c7-45df-bd06-c614e15594f1"},"level":"info","message":"Building connection plan","requestID":"3bef211f32500e537cddf96a08765e36"} 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":"395c4873-51b0-44de-8b86-807fc283e5d3"},{"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":"881712d3-fe41-4ca0-ae66-e4429c27434f"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"cdc0ab6a-2316-4fa3-9c90-a24c1fecabe8"}]},"level":"info","message":"Built pairwise service configurations","requestID":"3bef211f32500e537cddf96a08765e36"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b2440a508505f52af1da3a79ef0ca07b","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"3bef211f32500e537cddf96a08765e36"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"e3013ae0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b2440a508505f52af1da3a79ef0ca07b"} gateway-1 | {"time_local":"02/Aug/2024:16:25:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b2440a508505f52af1da3a79ef0ca07b"} device-1 | {"level":"info","message":"GET /devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e? 200 15ms","method":"GET","requestID":"b2440a508505f52af1da3a79ef0ca07b","responseTime":15,"status":200,"url":"/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.971031,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e3013ae0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615952,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1Mn0.B0zNPKovhlX85FEdfuztZbu8mEBd56sk1kOg__-2BAc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e3013ae0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"e448dcc6-3881-49a2-aa57-08ab5e352ee4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615952.7949016} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4f56cef8-8fbc-4159-8f18-1cf9a1f25148","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615952.7951577} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"e3013ae0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"e3013ae0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"e3013ae0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/175c12e1-9c0a-4c48-bb57-d61edf1a5c37'","requestID":"e3013ae0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/175c12e1-9c0a-4c48-bb57-d61edf1a5c37'","requestID":"e3013ae0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"e3013ae0-50eb-11ef-8434-2f6d198c7397"} 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":"e3013ae0-50eb-11ef-8434-2f6d198c7397","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":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"e3013ae0-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a16be45-b2c7-45df-bd06-c614e15594f1"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"3bef211f32500e537cddf96a08765e36"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e309ed70-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffbbd8c8d-88ec-415c-9fa4-dd759e76d95f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"270ddd8c-f9d5-400f-ae1d-3a6db235ec79","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615952.8453033} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.145053,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e309ed70-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","object_type":"device","rebac_allow":false,"scope_allow":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":"e309ed70-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e309ed70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f/signaling 200 10ms","method":"POST","requestID":"e309ed70-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e30bc230-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c83f147-c0ed-49f3-9bb0-c193272e4f3e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c985ac3c-47bd-44ba-a6be-de5650ed4ba9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615952.8554902} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.908067,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e30bc230-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e","object_type":"device","rebac_allow":false,"scope_allow":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":"e30bc230-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e30bc230-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e/signaling 200 8ms","method":"POST","requestID":"e30bc230-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e/signaling"} device-1 | {"device":"8c83f147-c0ed-49f3-9bb0-c193272e4f3e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"8c83f147-c0ed-49f3-9bb0-c193272e4f3e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 6632452131937678989 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:13kF\r\na=ice-pwd:gFBcscSzKW54AZ3I4vO/P6r4\r\na=ice-options:trickle\r\na=fingerprint:sha-256 6E:EF:E5:90:32:06:48:5F:09:0B:74:C3:29:75:B8:FA:C4:3E:F3:63:4D:A1:95:C1:0E:6E:37:75:0D:27:B0:B1\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"8c83f147-c0ed-49f3-9bb0-c193272e4f3e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"8c83f147-c0ed-49f3-9bb0-c193272e4f3e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"175c12e1-9c0a-4c48-bb57-d61edf1a5c37","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/175c12e1-9c0a-4c48-bb57-d61edf1a5c37' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"175c12e1-9c0a-4c48-bb57-d61edf1a5c37","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"911e3f2772d1490dba695baf67aea948","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":"911e3f2772d1490dba695baf67aea948","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/175c12e1-9c0a-4c48-bb57-d61edf1a5c37"}}},"level":"info","message":"received a callback","requestID":"911e3f2772d1490dba695baf67aea948"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"911e3f2772d1490dba695baf67aea948","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:54 +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":"911e3f2772d1490dba695baf67aea948"} device-1 | {"content":{"candidate":"candidate:912015885 1 udp 2113937151 da32b328-f40a-4445-b637-bf69fbb7ba56.local 55764 typ host generation 0 ufrag 13kF network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"8c83f147-c0ed-49f3-9bb0-c193272e4f3e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:861162837 1 udp 1677729535 141.24.211.56 55764 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 13kF network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"8c83f147-c0ed-49f3-9bb0-c193272e4f3e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1616507614 1 udp 33562623 141.24.210.113 61127 typ relay raddr 141.24.211.56 rport 55764 generation 0 ufrag 13kF network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"8c83f147-c0ed-49f3-9bb0-c193272e4f3e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"8c83f147-c0ed-49f3-9bb0-c193272e4f3e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e'"} device-1 | {"data":{"peerconnection":"175c12e1-9c0a-4c48-bb57-d61edf1a5c37","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"8c83f147-c0ed-49f3-9bb0-c193272e4f3e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"175c12e1-9c0a-4c48-bb57-d61edf1a5c37","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/175c12e1-9c0a-4c48-bb57-d61edf1a5c37' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"175c12e1-9c0a-4c48-bb57-d61edf1a5c37","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"88d2c81f40ed96359c8a504a2a862123","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":"88d2c81f40ed96359c8a504a2a862123","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/175c12e1-9c0a-4c48-bb57-d61edf1a5c37"}}},"level":"info","message":"received a callback","requestID":"88d2c81f40ed96359c8a504a2a862123"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"e44c7f90-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:54Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F175c12e1-9c0a-4c48-bb57-d61edf1a5c37","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3174753b-7f2a-48bc-8787-edcdd530202f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615954.9584904} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.217395,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/175c12e1-9c0a-4c48-bb57-d61edf1a5c37","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e44c7f90-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/175c12e1-9c0a-4c48-bb57-d61edf1a5c37","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":"e44c7f90-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"e44c7f90-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/175c12e1-9c0a-4c48-bb57-d61edf1a5c37 200 10ms","method":"GET","requestID":"e44c7f90-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/peerconnections/175c12e1-9c0a-4c48-bb57-d61edf1a5c37"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 33ms","method":"POST","requestID":"88d2c81f40ed96359c8a504a2a862123","responseTime":33,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:54 +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.036","http_referrer":"","http_user_agent":"node-fetch","requestID":"88d2c81f40ed96359c8a504a2a862123"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e450c550-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:54Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffbbd8c8d-88ec-415c-9fa4-dd759e76d95f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e88f462f-2c2d-426a-a891-8721210629ae","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615954.9869194} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.993292,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e450c550-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","object_type":"device","rebac_allow":false,"scope_allow":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":"e450c550-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e450c550-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f/signaling 200 11ms","method":"POST","requestID":"e450c550-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e452c120-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:54Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c83f147-c0ed-49f3-9bb0-c193272e4f3e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7e2d719a-f2e4-49b9-bc47-855900c0d608","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615954.9996943} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.030156,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e452c120-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e","object_type":"device","rebac_allow":false,"scope_allow":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":"e452c120-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e452c120-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e/signaling 200 10ms","method":"POST","requestID":"e452c120-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1NX0.t0pqEyuC2OrZDtEvRjpIil15yzhdq1Y1l7bPPY3YyUc","level":"info","message":"auth send jwt","requestID":"8faee382aac96d38e2d2cf8162576368"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8faee382aac96d38e2d2cf8162576368","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/8a16be45-b2c7-45df-bd06-c614e15594f1","requestID":"8faee382aac96d38e2d2cf8162576368"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.300666,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8a16be45-b2c7-45df-bd06-c614e15594f1","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"8faee382aac96d38e2d2cf8162576368","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/8a16be45-b2c7-45df-bd06-c614e15594f1","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615955,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1NX0.t0pqEyuC2OrZDtEvRjpIil15yzhdq1Y1l7bPPY3YyUc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8faee382aac96d38e2d2cf8162576368","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/8a16be45-b2c7-45df-bd06-c614e15594f1","requestID":"8faee382aac96d38e2d2cf8162576368"} experiment-1 | {"level":"info","message":"GET /experiments/8a16be45-b2c7-45df-bd06-c614e15594f1 200 17ms","method":"GET","requestID":"8faee382aac96d38e2d2cf8162576368","responseTime":17,"status":200,"url":"/experiments/8a16be45-b2c7-45df-bd06-c614e15594f1"} gateway-1 | {"time_local":"02/Aug/2024:16:25:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/8a16be45-b2c7-45df-bd06-c614e15594f1 HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8faee382aac96d38e2d2cf8162576368"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1NX0.t0pqEyuC2OrZDtEvRjpIil15yzhdq1Y1l7bPPY3YyUc","level":"info","message":"auth send jwt","requestID":"8c6c95114d87500cb24712f6382ac7b5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8c6c95114d87500cb24712f6382ac7b5","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/8a16be45-b2c7-45df-bd06-c614e15594f1","requestID":"8c6c95114d87500cb24712f6382ac7b5"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.209497,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:55Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8a16be45-b2c7-45df-bd06-c614e15594f1","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"8c6c95114d87500cb24712f6382ac7b5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/8a16be45-b2c7-45df-bd06-c614e15594f1","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615955,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1NX0.t0pqEyuC2OrZDtEvRjpIil15yzhdq1Y1l7bPPY3YyUc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8c6c95114d87500cb24712f6382ac7b5","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a16be45-b2c7-45df-bd06-c614e15594f1"},"level":"info","message":"Attempting to finish experiment","requestID":"8c6c95114d87500cb24712f6382ac7b5"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"e4614010-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.168626,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:55Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/175c12e1-9c0a-4c48-bb57-d61edf1a5c37","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e4614010-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/175c12e1-9c0a-4c48-bb57-d61edf1a5c37","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615955,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1NX0.t0pqEyuC2OrZDtEvRjpIil15yzhdq1Y1l7bPPY3YyUc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e4614010-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/175c12e1-9c0a-4c48-bb57-d61edf1a5c37","device":"8c83f147-c0ed-49f3-9bb0-c193272e4f3e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/175c12e1-9c0a-4c48-bb57-d61edf1a5c37' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/175c12e1-9c0a-4c48-bb57-d61edf1a5c37' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"175c12e1-9c0a-4c48-bb57-d61edf1a5c37","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F175c12e1-9c0a-4c48-bb57-d61edf1a5c37': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F175c12e1-9c0a-4c48-bb57-d61edf1a5c37","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"9807a17f-e18d-47c6-b96c-b1decaab1c2d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615955.107393} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"85022aa7-ae6b-4ce3-b3b8-1675c6bce34d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615955.1076427} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"da5573c0f3bbd035ce31cb34de77cca1","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":"da5573c0f3bbd035ce31cb34de77cca1","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"e4614010-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0d2521dfa95c717a7e97892263ceec22","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/175c12e1-9c0a-4c48-bb57-d61edf1a5c37"}}},"level":"info","message":"received a callback","requestID":"da5573c0f3bbd035ce31cb34de77cca1"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0d2521dfa95c717a7e97892263ceec22","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/175c12e1-9c0a-4c48-bb57-d61edf1a5c37"}}},"level":"info","message":"received a callback","requestID":"0d2521dfa95c717a7e97892263ceec22"} device-1 | {"data":{"peerconnection":"175c12e1-9c0a-4c48-bb57-d61edf1a5c37","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"e4614010-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/175c12e1-9c0a-4c48-bb57-d61edf1a5c37 204 41ms","method":"DELETE","requestID":"e4614010-50eb-11ef-8434-2f6d198c7397","responseTime":41,"status":204,"url":"/peerconnections/175c12e1-9c0a-4c48-bb57-d61edf1a5c37"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a16be45-b2c7-45df-bd06-c614e15594f1"},"level":"info","message":"Successfully finished experiment","requestID":"8c6c95114d87500cb24712f6382ac7b5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e46b0410-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:55Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffbbd8c8d-88ec-415c-9fa4-dd759e76d95f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8a7bc7e4-1128-46a5-a148-ca7720cf22b2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615955.159126} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.915593,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e46b0410-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f","object_type":"device","rebac_allow":false,"scope_allow":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":"e46b0410-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e46b0410-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f/signaling 200 12ms","method":"POST","requestID":"e46b0410-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8a16be45-b2c7-45df-bd06-c614e15594f1': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8a16be45-b2c7-45df-bd06-c614e15594f1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"5995cca3-1b3c-4673-b02a-7dbaebd82f6e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615955.1672785} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e46d4e00-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8b948122-d9f5-4493-b83c-2ecaa6bbc5ba","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615955.167778} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"8c6c95114d87500cb24712f6382ac7b5","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:55Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8c83f147-c0ed-49f3-9bb0-c193272e4f3e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8806a876-4c41-43ce-9bcf-1d554cb2b709","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615955.173121} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.020388,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e46d4e00-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e","object_type":"device","rebac_allow":false,"scope_allow":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":"e46d4e00-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e46d4e00-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e/signaling 200 10ms","method":"POST","requestID":"e46d4e00-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/8c83f147-c0ed-49f3-9bb0-c193272e4f3e/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/8a16be45-b2c7-45df-bd06-c614e15594f1","requestID":"8c6c95114d87500cb24712f6382ac7b5"} gateway-1 | {"time_local":"02/Aug/2024:16:25:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/8a16be45-b2c7-45df-bd06-c614e15594f1 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.161","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8c6c95114d87500cb24712f6382ac7b5"} gateway-1 | {"time_local":"02/Aug/2024:16:25:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3662","request_time":"4.303","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"8eac12824505a75c236290be4ab65032"} experiment-1 | {"level":"info","message":"DELETE /experiments/8a16be45-b2c7-45df-bd06-c614e15594f1 204 157ms","method":"DELETE","requestID":"8c6c95114d87500cb24712f6382ac7b5","responseTime":157,"status":204,"url":"/experiments/8a16be45-b2c7-45df-bd06-c614e15594f1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"da5573c0f3bbd035ce31cb34de77cca1","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:55 +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":"da5573c0f3bbd035ce31cb34de77cca1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"0d2521dfa95c717a7e97892263ceec22","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:55 +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":"0d2521dfa95c717a7e97892263ceec22"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1NX0.t0pqEyuC2OrZDtEvRjpIil15yzhdq1Y1l7bPPY3YyUc","level":"info","message":"auth send jwt","requestID":"84535a54e95a8b354c29c3eeedf980dc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"84535a54e95a8b354c29c3eeedf980dc","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"84535a54e95a8b354c29c3eeedf980dc"} gateway-1 | {"time_local":"02/Aug/2024:16:25:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3125","request_time":"2.804","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":"0cc9180ddcda6d72065450fbab4b5c29"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.976499,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"84535a54e95a8b354c29c3eeedf980dc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615955,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1NX0.t0pqEyuC2OrZDtEvRjpIil15yzhdq1Y1l7bPPY3YyUc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"84535a54e95a8b354c29c3eeedf980dc","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/fbbd8c8d-88ec-415c-9fa4-dd759e76d95f' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff71b0dc3-a68c-41fb-bd25-045655cd5209","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f8f2e77d-1e92-47d4-9497-84bd6016d45e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615955.2652106} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"84535a54e95a8b354c29c3eeedf980dc","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/8c83f147-c0ed-49f3-9bb0-c193272e4f3e' 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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fa7f515e-dc87-4528-b731-22e9d678f461","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615955.27065} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"84535a54e95a8b354c29c3eeedf980dc","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff71b0dc3-a68c-41fb-bd25-045655cd5209","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"026cef9b-57ab-408c-af4b-124239ed827a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615955.279721} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3ce1e056-c819-4703-97a8-956d98f88b87","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615955.2799335} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"84535a54e95a8b354c29c3eeedf980dc","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff71b0dc3-a68c-41fb-bd25-045655cd5209","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff71b0dc3-a68c-41fb-bd25-045655cd5209","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:55.279693597Z"}]},"request_id":"43f40111-1853-4800-9eb8-f5e37d0f2c48","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615955.2844083} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"84535a54e95a8b354c29c3eeedf980dc","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"84535a54e95a8b354c29c3eeedf980dc"} gateway-1 | {"time_local":"02/Aug/2024:16:25:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"84535a54e95a8b354c29c3eeedf980dc"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"84535a54e95a8b354c29c3eeedf980dc","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1NX0.t0pqEyuC2OrZDtEvRjpIil15yzhdq1Y1l7bPPY3YyUc","level":"info","message":"auth send jwt","requestID":"e23f3f5a86787c0eacbcb9428d3ea82e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e23f3f5a86787c0eacbcb9428d3ea82e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e23f3f5a86787c0eacbcb9428d3ea82e"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.743592,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e23f3f5a86787c0eacbcb9428d3ea82e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615955,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1NX0.t0pqEyuC2OrZDtEvRjpIil15yzhdq1Y1l7bPPY3YyUc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e23f3f5a86787c0eacbcb9428d3ea82e","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F265ffe82-7d22-4433-af77-a658d9782473","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e2f2cd68-864c-4cf8-9b11-5275dcb80f8b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615955.3127027} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e23f3f5a86787c0eacbcb9428d3ea82e","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"28dbff9b-3ee0-4bdd-b8e6-9d87e3582b41","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615955.3172452} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e23f3f5a86787c0eacbcb9428d3ea82e","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F265ffe82-7d22-4433-af77-a658d9782473","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"a89980b1-4f0f-4ea6-ad64-8d6e7e33d468","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615955.327419} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"47e4c62b-c886-4e35-89e2-9352b15e298f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615955.3276682} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"e23f3f5a86787c0eacbcb9428d3ea82e","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F265ffe82-7d22-4433-af77-a658d9782473","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F265ffe82-7d22-4433-af77-a658d9782473","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:55.327395390Z"}]},"request_id":"60e68d09-fbeb-4ed7-bcaa-aeed32f03581","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615955.3314369} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e23f3f5a86787c0eacbcb9428d3ea82e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e23f3f5a86787c0eacbcb9428d3ea82e"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"e23f3f5a86787c0eacbcb9428d3ea82e","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e23f3f5a86787c0eacbcb9428d3ea82e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1NX0.t0pqEyuC2OrZDtEvRjpIil15yzhdq1Y1l7bPPY3YyUc","level":"info","message":"auth send jwt","requestID":"67806602eeab45fca5389d0abff64b01"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"67806602eeab45fca5389d0abff64b01","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"67806602eeab45fca5389d0abff64b01"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.154421,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"67806602eeab45fca5389d0abff64b01","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615955,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1NX0.t0pqEyuC2OrZDtEvRjpIil15yzhdq1Y1l7bPPY3YyUc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"67806602eeab45fca5389d0abff64b01","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff71b0dc3-a68c-41fb-bd25-045655cd5209","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff71b0dc3-a68c-41fb-bd25-045655cd5209","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:55.279693597Z"}]},"request_id":"db560ec8-bc30-4175-9c04-48c3767b02b4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615955.8458135} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"67806602eeab45fca5389d0abff64b01","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"69046197-e97a-4533-b189-47f54b989d2d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615955.8536894} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"67806602eeab45fca5389d0abff64b01","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff71b0dc3-a68c-41fb-bd25-045655cd5209","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff71b0dc3-a68c-41fb-bd25-045655cd5209","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:55.279693597Z"}]},"request_id":"dd416be2-b13f-4c96-a3ea-827610e0528e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615955.8665125} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"67806602eeab45fca5389d0abff64b01","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"67806602eeab45fca5389d0abff64b01"} gateway-1 | {"time_local":"02/Aug/2024:16:25:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f71b0dc3-a68c-41fb-bd25-045655cd5209 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.042","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"67806602eeab45fca5389d0abff64b01"} device-1 | {"level":"info","message":"PATCH /devices/f71b0dc3-a68c-41fb-bd25-045655cd5209 200 38ms","method":"PATCH","requestID":"67806602eeab45fca5389d0abff64b01","responseTime":38,"status":200,"url":"/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1NX0.t0pqEyuC2OrZDtEvRjpIil15yzhdq1Y1l7bPPY3YyUc","level":"info","message":"auth send jwt","requestID":"3092be9cbfaa6edd2ff9ea4bde92b880"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3092be9cbfaa6edd2ff9ea4bde92b880","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3092be9cbfaa6edd2ff9ea4bde92b880"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.240123,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"3092be9cbfaa6edd2ff9ea4bde92b880","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615955,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1NX0.t0pqEyuC2OrZDtEvRjpIil15yzhdq1Y1l7bPPY3YyUc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3092be9cbfaa6edd2ff9ea4bde92b880","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3092be9cbfaa6edd2ff9ea4bde92b880"} device-1 | {"level":"info","message":"POST /devices/f71b0dc3-a68c-41fb-bd25-045655cd5209/websocket 200 20ms","method":"POST","requestID":"3092be9cbfaa6edd2ff9ea4bde92b880","responseTime":20,"status":200,"url":"/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:25:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f71b0dc3-a68c-41fb-bd25-045655cd5209/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"3092be9cbfaa6edd2ff9ea4bde92b880"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b3ebd2d927301341aeb1089ecc81739b","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":"b3ebd2d927301341aeb1089ecc81739b","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/265ffe82-7d22-4433-af77-a658d9782473/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":"b3ebd2d927301341aeb1089ecc81739b"} device-1 | {"level":"info","message":"OPTIONS /devices/265ffe82-7d22-4433-af77-a658d9782473/websocket 200 1ms","method":"OPTIONS","requestID":"b3ebd2d927301341aeb1089ecc81739b","responseTime":1,"status":200,"url":"/devices/265ffe82-7d22-4433-af77-a658d9782473/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1N30.oMp-kjHZuSeakiV4pfjfy2Cw66-plRdRhYv7bVy3bOw","level":"info","message":"auth send jwt","requestID":"8c78c4d6f39d3f42d3d0cbfdca81598b"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"8c78c4d6f39d3f42d3d0cbfdca81598b","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8c78c4d6f39d3f42d3d0cbfdca81598b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.400196,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"8c78c4d6f39d3f42d3d0cbfdca81598b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615957,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1N30.oMp-kjHZuSeakiV4pfjfy2Cw66-plRdRhYv7bVy3bOw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8c78c4d6f39d3f42d3d0cbfdca81598b","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8c78c4d6f39d3f42d3d0cbfdca81598b"} gateway-1 | {"time_local":"02/Aug/2024:16:25:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/265ffe82-7d22-4433-af77-a658d9782473/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":"8c78c4d6f39d3f42d3d0cbfdca81598b"} device-1 | {"level":"info","message":"POST /devices/265ffe82-7d22-4433-af77-a658d9782473/websocket 200 22ms","method":"POST","requestID":"8c78c4d6f39d3f42d3d0cbfdca81598b","responseTime":22,"status":200,"url":"/devices/265ffe82-7d22-4433-af77-a658d9782473/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"aebe7a8d9d49bd09cea672a5ee292583","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":"aebe7a8d9d49bd09cea672a5ee292583","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:25:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/265ffe82-7d22-4433-af77-a658d9782473? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"aebe7a8d9d49bd09cea672a5ee292583"} device-1 | {"level":"info","message":"OPTIONS /devices/265ffe82-7d22-4433-af77-a658d9782473? 200 1ms","method":"OPTIONS","requestID":"aebe7a8d9d49bd09cea672a5ee292583","responseTime":1,"status":200,"url":"/devices/265ffe82-7d22-4433-af77-a658d9782473?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1N30.oMp-kjHZuSeakiV4pfjfy2Cw66-plRdRhYv7bVy3bOw","level":"info","message":"auth send jwt","requestID":"6c9d6122f646e33636b5b3c01a19e5dd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6c9d6122f646e33636b5b3c01a19e5dd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"6c9d6122f646e33636b5b3c01a19e5dd"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.247219,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"6c9d6122f646e33636b5b3c01a19e5dd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615957,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1N30.oMp-kjHZuSeakiV4pfjfy2Cw66-plRdRhYv7bVy3bOw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6c9d6122f646e33636b5b3c01a19e5dd","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F265ffe82-7d22-4433-af77-a658d9782473","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F265ffe82-7d22-4433-af77-a658d9782473","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:55.327395390Z"}]},"request_id":"5323ab53-7119-4806-844f-c47e906b9f35","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615957.4817357} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6c9d6122f646e33636b5b3c01a19e5dd","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9d9efeab-0728-4e80-85a5-714818dbe74d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615957.4880297} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"6c9d6122f646e33636b5b3c01a19e5dd","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F265ffe82-7d22-4433-af77-a658d9782473","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F265ffe82-7d22-4433-af77-a658d9782473","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:55.327395390Z"}]},"request_id":"dfdfdd27-e98f-4de1-842a-51dc0563a8ef","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615957.5010712} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6c9d6122f646e33636b5b3c01a19e5dd","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"6c9d6122f646e33636b5b3c01a19e5dd"} gateway-1 | {"time_local":"02/Aug/2024:16:25:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/265ffe82-7d22-4433-af77-a658d9782473? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"6c9d6122f646e33636b5b3c01a19e5dd"} device-1 | {"level":"info","message":"PATCH /devices/265ffe82-7d22-4433-af77-a658d9782473? 200 36ms","method":"PATCH","requestID":"6c9d6122f646e33636b5b3c01a19e5dd","responseTime":36,"status":200,"url":"/devices/265ffe82-7d22-4433-af77-a658d9782473?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1N30.oMp-kjHZuSeakiV4pfjfy2Cw66-plRdRhYv7bVy3bOw","level":"info","message":"auth send jwt","requestID":"4c9950367658f439bdd7660bc22f8565"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4c9950367658f439bdd7660bc22f8565","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4c9950367658f439bdd7660bc22f8565"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.196618,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"4c9950367658f439bdd7660bc22f8565","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615957,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1N30.oMp-kjHZuSeakiV4pfjfy2Cw66-plRdRhYv7bVy3bOw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4c9950367658f439bdd7660bc22f8565","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff71b0dc3-a68c-41fb-bd25-045655cd5209","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff71b0dc3-a68c-41fb-bd25-045655cd5209","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:55.279693597Z"}]},"request_id":"110f780e-f4ed-49b6-a1fc-274375d88d04","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615957.5296967} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4c9950367658f439bdd7660bc22f8565","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4c9950367658f439bdd7660bc22f8565"} device-1 | {"level":"info","message":"GET /devices/f71b0dc3-a68c-41fb-bd25-045655cd5209? 200 16ms","method":"GET","requestID":"4c9950367658f439bdd7660bc22f8565","responseTime":16,"status":200,"url":"/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f71b0dc3-a68c-41fb-bd25-045655cd5209? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4c9950367658f439bdd7660bc22f8565"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1N30.oMp-kjHZuSeakiV4pfjfy2Cw66-plRdRhYv7bVy3bOw","level":"info","message":"auth send jwt","requestID":"563f7f3d35b0244184a94ecaa1d77302"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"563f7f3d35b0244184a94ecaa1d77302","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"563f7f3d35b0244184a94ecaa1d77302"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.187294,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"563f7f3d35b0244184a94ecaa1d77302","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615957,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1N30.oMp-kjHZuSeakiV4pfjfy2Cw66-plRdRhYv7bVy3bOw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"563f7f3d35b0244184a94ecaa1d77302","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F265ffe82-7d22-4433-af77-a658d9782473","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F265ffe82-7d22-4433-af77-a658d9782473","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:55.327395390Z"}]},"request_id":"baa684d9-3aca-4a41-b354-66dac02de823","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615957.5524952} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"563f7f3d35b0244184a94ecaa1d77302","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"563f7f3d35b0244184a94ecaa1d77302"} device-1 | {"level":"info","message":"GET /devices/265ffe82-7d22-4433-af77-a658d9782473? 200 15ms","method":"GET","requestID":"563f7f3d35b0244184a94ecaa1d77302","responseTime":15,"status":200,"url":"/devices/265ffe82-7d22-4433-af77-a658d9782473?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/265ffe82-7d22-4433-af77-a658d9782473? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"563f7f3d35b0244184a94ecaa1d77302"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1N30.oMp-kjHZuSeakiV4pfjfy2Cw66-plRdRhYv7bVy3bOw","level":"info","message":"auth send jwt","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.199139,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"8c7330182f58b44c04f5ad9bd5ed3a56","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615957,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1N30.oMp-kjHZuSeakiV4pfjfy2Cw66-plRdRhYv7bVy3bOw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/049544b0-4d05-4d9c-9c1b-05527549474a"},"level":"info","message":"Attempting to run experiment","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/049544b0-4d05-4d9c-9c1b-05527549474a"},"level":"info","message":"Attempting to book experiment","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/049544b0-4d05-4d9c-9c1b-05527549474a"},"level":"info","message":"Successfully booked experiment","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e5e08d10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e5e0db30-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.077237,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e5e08d10-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615957,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1N30.oMp-kjHZuSeakiV4pfjfy2Cw66-plRdRhYv7bVy3bOw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e5e08d10-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Received request.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Sent response.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.974366,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e5e0db30-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615957,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1N30.oMp-kjHZuSeakiV4pfjfy2Cw66-plRdRhYv7bVy3bOw"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e5e0db30-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff71b0dc3-a68c-41fb-bd25-045655cd5209","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff71b0dc3-a68c-41fb-bd25-045655cd5209","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:55.279693597Z"}]},"request_id":"cd7fe4af-1ede-4b31-9e24-14b1c78f7256","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615957.6126153} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e5e08d10-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e5e08d10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/f71b0dc3-a68c-41fb-bd25-045655cd5209? 200 18ms","method":"GET","requestID":"e5e08d10-50eb-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F265ffe82-7d22-4433-af77-a658d9782473","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F265ffe82-7d22-4433-af77-a658d9782473","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:55.327395390Z"}]},"request_id":"08a4b485-bfd9-4438-9ef8-161c0f03d814","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615957.620393} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e5e0db30-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e5e0db30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/265ffe82-7d22-4433-af77-a658d9782473? 200 22ms","method":"GET","requestID":"e5e0db30-50eb-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/265ffe82-7d22-4433-af77-a658d9782473?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/049544b0-4d05-4d9c-9c1b-05527549474a"},"level":"info","message":"Setting up experiment","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/049544b0-4d05-4d9c-9c1b-05527549474a"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/049544b0-4d05-4d9c-9c1b-05527549474a"},"level":"info","message":"Successfully locked booking for experiment","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/049544b0-4d05-4d9c-9c1b-05527549474a"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/049544b0-4d05-4d9c-9c1b-05527549474a"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/049544b0-4d05-4d9c-9c1b-05527549474a"},"level":"info","message":"Attempting to update booking for experiment","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/049544b0-4d05-4d9c-9c1b-05527549474a"},"level":"info","message":"Successfully updated booking for experiment","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/049544b0-4d05-4d9c-9c1b-05527549474a"},"level":"info","message":"Successfully set up experiment","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e5ec4ce0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e5ec9b00-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e5ece920-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.917739,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Received request.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:57Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/049544b0-4d05-4d9c-9c1b-05527549474a"},"level":"info","message":"Successfully running experiment","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e5ec4ce0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615957,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1N30.oMp-kjHZuSeakiV4pfjfy2Cw66-plRdRhYv7bVy3bOw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e5ec4ce0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Sent response.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.690457,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e5ec9b00-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615957,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1N30.oMp-kjHZuSeakiV4pfjfy2Cw66-plRdRhYv7bVy3bOw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e5ec9b00-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff71b0dc3-a68c-41fb-bd25-045655cd5209","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d3ed7ce7-4a9e-4610-b5d4-46a651f75f2c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615957.6893609} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F265ffe82-7d22-4433-af77-a658d9782473","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F265ffe82-7d22-4433-af77-a658d9782473","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:55.327395390Z"}]},"request_id":"10f6095d-d111-4b1c-a145-471a2c24375c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615957.6915534} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.652259,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e5ece920-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209","object_type":"device","rebac_allow":false,"scope_allow":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":"e5ece920-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e5ec9b00-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff71b0dc3-a68c-41fb-bd25-045655cd5209","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff71b0dc3-a68c-41fb-bd25-045655cd5209","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:55.279693597Z"}]},"request_id":"b3256634-34c8-4774-b617-e318580ca01f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615957.6921217} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e5ec4ce0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e5ece920-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f71b0dc3-a68c-41fb-bd25-045655cd5209/signaling 200 18ms","method":"POST","requestID":"e5ece920-50eb-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e5ec9b00-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/265ffe82-7d22-4433-af77-a658d9782473? 200 21ms","method":"GET","requestID":"e5ec9b00-50eb-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/devices/265ffe82-7d22-4433-af77-a658d9782473?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e5ec4ce0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/f71b0dc3-a68c-41fb-bd25-045655cd5209? 200 25ms","method":"GET","requestID":"e5ec4ce0-50eb-11ef-8434-2f6d198c7397","responseTime":25,"status":200,"url":"/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e5f04480-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e5f092a0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F049544b0-4d05-4d9c-9c1b-05527549474a#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F049544b0-4d05-4d9c-9c1b-05527549474a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"2664b157-9508-44f0-8647-a93525c96242","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615957.706376} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5482025d-b6f6-4e07-8b85-35de202752c9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615957.7065272} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.344019,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Received request.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F265ffe82-7d22-4433-af77-a658d9782473","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ca40adf4-f2c8-4034-9630-c38d6bab529d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615957.70991} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e5f04480-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473","object_type":"device","rebac_allow":false,"scope_allow":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":"e5f04480-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff71b0dc3-a68c-41fb-bd25-045655cd5209","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8fc4b51b-c87e-48f9-b32f-f2d59cb06bc5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615957.712827} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Sent response.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.80403,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e5f092a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209","object_type":"device","rebac_allow":false,"scope_allow":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":"e5f092a0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/049544b0-4d05-4d9c-9c1b-05527549474a","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56"} experiment-1 | {"level":"info","message":"POST /experiments? 201 151ms","method":"POST","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56","responseTime":151,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"02/Aug/2024:16:25:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.158","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e5f04480-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/265ffe82-7d22-4433-af77-a658d9782473/signaling 200 13ms","method":"POST","requestID":"e5f04480-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/265ffe82-7d22-4433-af77-a658d9782473/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e5f092a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f71b0dc3-a68c-41fb-bd25-045655cd5209/signaling 200 13ms","method":"POST","requestID":"e5f092a0-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1N30.oMp-kjHZuSeakiV4pfjfy2Cw66-plRdRhYv7bVy3bOw","level":"info","message":"auth send jwt","requestID":"67aed424851d1521aa7972be82a1530c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e5f2dc90-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"67aed424851d1521aa7972be82a1530c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"67aed424851d1521aa7972be82a1530c"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Received request.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Sent response.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.626465,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"67aed424851d1521aa7972be82a1530c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615957,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1N30.oMp-kjHZuSeakiV4pfjfy2Cw66-plRdRhYv7bVy3bOw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"67aed424851d1521aa7972be82a1530c","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F265ffe82-7d22-4433-af77-a658d9782473","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"893f14c3-95a3-462b-a131-4b7e5fe89b0c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615957.7254672} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.192963,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e5f2dc90-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473","object_type":"device","rebac_allow":false,"scope_allow":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":"e5f2dc90-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff71b0dc3-a68c-41fb-bd25-045655cd5209","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff71b0dc3-a68c-41fb-bd25-045655cd5209","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:55.279693597Z"}]},"request_id":"2504f2d6-f2e8-4d0a-91e9-3557f174d016","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615957.7295077} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e5f2dc90-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/265ffe82-7d22-4433-af77-a658d9782473/signaling 200 9ms","method":"POST","requestID":"e5f2dc90-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/265ffe82-7d22-4433-af77-a658d9782473/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"67aed424851d1521aa7972be82a1530c","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/049544b0-4d05-4d9c-9c1b-05527549474a"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e5f48a40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e5f4b150-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:57Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"67aed424851d1521aa7972be82a1530c"} gateway-1 | {"time_local":"02/Aug/2024:16:25:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f71b0dc3-a68c-41fb-bd25-045655cd5209? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"67aed424851d1521aa7972be82a1530c"} device-1 | {"level":"info","message":"GET /devices/f71b0dc3-a68c-41fb-bd25-045655cd5209? 200 13ms","method":"GET","requestID":"67aed424851d1521aa7972be82a1530c","responseTime":13,"status":200,"url":"/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.939236,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e5f48a40-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615957,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1N30.oMp-kjHZuSeakiV4pfjfy2Cw66-plRdRhYv7bVy3bOw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e5f48a40-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Received request.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Sent response.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.585338,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e5f4b150-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615957,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1N30.oMp-kjHZuSeakiV4pfjfy2Cw66-plRdRhYv7bVy3bOw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e5f4b150-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1N30.oMp-kjHZuSeakiV4pfjfy2Cw66-plRdRhYv7bVy3bOw","level":"info","message":"auth send jwt","requestID":"e55c3a589366743361ded78b3e1adb17"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e55c3a589366743361ded78b3e1adb17","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e55c3a589366743361ded78b3e1adb17"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff71b0dc3-a68c-41fb-bd25-045655cd5209","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff71b0dc3-a68c-41fb-bd25-045655cd5209","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:55.279693597Z"}]},"request_id":"07602b5f-8443-41e5-b281-d6146c12366f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615957.7399974} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e5f48a40-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F265ffe82-7d22-4433-af77-a658d9782473","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F265ffe82-7d22-4433-af77-a658d9782473","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:55.327395390Z"}]},"request_id":"ee7df30e-a77b-4a1f-8ab7-ee6b39aeb3d7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615957.74099} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e5f4b150-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.421278,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:57Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e5f48a40-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e55c3a589366743361ded78b3e1adb17","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615957,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1N30.oMp-kjHZuSeakiV4pfjfy2Cw66-plRdRhYv7bVy3bOw"} device-1 | {"level":"info","message":"GET /devices/f71b0dc3-a68c-41fb-bd25-045655cd5209? 200 13ms","method":"GET","requestID":"e5f48a40-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e5f4b150-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e55c3a589366743361ded78b3e1adb17","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/265ffe82-7d22-4433-af77-a658d9782473? 200 13ms","method":"GET","requestID":"e5f4b150-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/265ffe82-7d22-4433-af77-a658d9782473?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/049544b0-4d05-4d9c-9c1b-05527549474a"},"level":"info","message":"Building connection plan","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56"} 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":"ae17fbd3-1acb-4951-9b1f-91f026eda0aa"},{"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":"e5eefc14-c810-4c83-b97e-ab7a4630da36"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"9e156982-197c-40a1-bf7f-9e67573ae3c9"}]},"level":"info","message":"Built pairwise service configurations","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"e5f6fb40-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F265ffe82-7d22-4433-af77-a658d9782473","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F265ffe82-7d22-4433-af77-a658d9782473","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:25:55.327395390Z"}]},"request_id":"d8f44b94-de41-4029-80fa-95187f4faf30","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615957.7488513} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e55c3a589366743361ded78b3e1adb17","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.668117,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:57Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e55c3a589366743361ded78b3e1adb17"} gateway-1 | {"time_local":"02/Aug/2024:16:25:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/265ffe82-7d22-4433-af77-a658d9782473? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e55c3a589366743361ded78b3e1adb17"} device-1 | {"level":"info","message":"GET /devices/265ffe82-7d22-4433-af77-a658d9782473? 200 12ms","method":"GET","requestID":"e55c3a589366743361ded78b3e1adb17","responseTime":12,"status":200,"url":"/devices/265ffe82-7d22-4433-af77-a658d9782473?"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e5f6fb40-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615957,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk1N30.oMp-kjHZuSeakiV4pfjfy2Cw66-plRdRhYv7bVy3bOw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e5f6fb40-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"54c3fa86-3c0c-4d2e-ab33-e590d5e76baf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615957.7592494} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"937c296e-bcbf-4771-8ad1-2331b0e65910","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615957.7595031} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"e5f6fb40-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"e5f6fb40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"e5f6fb40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/accca963-bc8d-4b97-a2a4-1f2fefbe3fec'","requestID":"e5f6fb40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/accca963-bc8d-4b97-a2a4-1f2fefbe3fec'","requestID":"e5f6fb40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"e5f6fb40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"e5f6fb40-50eb-11ef-8434-2f6d198c7397","responseTime":23,"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":"e5f6fb40-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/049544b0-4d05-4d9c-9c1b-05527549474a"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"8c7330182f58b44c04f5ad9bd5ed3a56"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e5fec370-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff71b0dc3-a68c-41fb-bd25-045655cd5209","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bf2d3f26-bbc9-4ce7-9ba5-6bffde71d004","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615957.8034675} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.473199,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e5fec370-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209","object_type":"device","rebac_allow":false,"scope_allow":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":"e5fec370-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e5fec370-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f71b0dc3-a68c-41fb-bd25-045655cd5209/signaling 200 8ms","method":"POST","requestID":"e5fec370-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e6002300-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F265ffe82-7d22-4433-af77-a658d9782473","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6e78501e-b71e-4a39-a2fb-d8ce9fcc23b3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615957.8130925} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.15102,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e6002300-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473","object_type":"device","rebac_allow":false,"scope_allow":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":"e6002300-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e6002300-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/265ffe82-7d22-4433-af77-a658d9782473/signaling 200 8ms","method":"POST","requestID":"e6002300-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/265ffe82-7d22-4433-af77-a658d9782473/signaling"} device-1 | {"device":"265ffe82-7d22-4433-af77-a658d9782473","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"265ffe82-7d22-4433-af77-a658d9782473","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"f71b0dc3-a68c-41fb-bd25-045655cd5209","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"accca963-bc8d-4b97-a2a4-1f2fefbe3fec","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 5292556918444855926 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=msid-semantic: WMS\r\nm=application 9 DTLS/SCTP 5000\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:79gm\r\na=ice-pwd:2Bd3Noz4kNtOj4BjDtE/WSeV\r\na=ice-options:trickle\r\na=fingerprint:sha-256 B0:CC:02:0B:4F:86:39:C7:C7:72:9F:D0:A0:FD:EE:A4:4F:5A:B9:D3:55:41:DA:0D:1F:EF:83:A7:22:C3:BE:F6\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"265ffe82-7d22-4433-af77-a658d9782473","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3898787815 1 udp 2113937151 5a4776cd-183b-44ff-867a-e96bf3c6ce4e.local 40606 typ host generation 0 ufrag 79gm network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"265ffe82-7d22-4433-af77-a658d9782473","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"265ffe82-7d22-4433-af77-a658d9782473","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:3983198399 1 udp 1677729535 141.24.211.56 40606 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 79gm network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"265ffe82-7d22-4433-af77-a658d9782473","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/accca963-bc8d-4b97-a2a4-1f2fefbe3fec' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"accca963-bc8d-4b97-a2a4-1f2fefbe3fec","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"f71b0dc3-a68c-41fb-bd25-045655cd5209","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f71b0dc3-a68c-41fb-bd25-045655cd5209","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f71b0dc3-a68c-41fb-bd25-045655cd5209","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"265ffe82-7d22-4433-af77-a658d9782473","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bff7b6d75345404cbe2bd37b27307f54","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)"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473'"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bff7b6d75345404cbe2bd37b27307f54","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/accca963-bc8d-4b97-a2a4-1f2fefbe3fec"}}},"level":"info","message":"received a callback","requestID":"bff7b6d75345404cbe2bd37b27307f54"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"bff7b6d75345404cbe2bd37b27307f54","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:59 +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":"bff7b6d75345404cbe2bd37b27307f54"} device-1 | {"data":{"peerconnection":"accca963-bc8d-4b97-a2a4-1f2fefbe3fec","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"f71b0dc3-a68c-41fb-bd25-045655cd5209","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"265ffe82-7d22-4433-af77-a658d9782473","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"f71b0dc3-a68c-41fb-bd25-045655cd5209","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"accca963-bc8d-4b97-a2a4-1f2fefbe3fec","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"265ffe82-7d22-4433-af77-a658d9782473","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/accca963-bc8d-4b97-a2a4-1f2fefbe3fec' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"accca963-bc8d-4b97-a2a4-1f2fefbe3fec","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8f15d24738ed77fbed630c102f5fe5a0","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":"8f15d24738ed77fbed630c102f5fe5a0","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/accca963-bc8d-4b97-a2a4-1f2fefbe3fec"}}},"level":"info","message":"received a callback","requestID":"8f15d24738ed77fbed630c102f5fe5a0"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"e74489e0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:59Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Faccca963-bc8d-4b97-a2a4-1f2fefbe3fec","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ce0da6f0-dbf3-4a06-910a-05fbc1bb3fd6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615959.9405935} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.760216,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/accca963-bc8d-4b97-a2a4-1f2fefbe3fec","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e74489e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/accca963-bc8d-4b97-a2a4-1f2fefbe3fec","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":"e74489e0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"e74489e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/accca963-bc8d-4b97-a2a4-1f2fefbe3fec 200 12ms","method":"GET","requestID":"e74489e0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/peerconnections/accca963-bc8d-4b97-a2a4-1f2fefbe3fec"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 40ms","method":"POST","requestID":"8f15d24738ed77fbed630c102f5fe5a0","responseTime":40,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:25:59 +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":"8f15d24738ed77fbed630c102f5fe5a0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e74992f0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:59Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F265ffe82-7d22-4433-af77-a658d9782473","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"68778c13-8654-4419-b55d-0b1cb43f0bb8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615959.9729981} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.273547,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e74992f0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473","object_type":"device","rebac_allow":false,"scope_allow":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":"e74992f0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e74992f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/265ffe82-7d22-4433-af77-a658d9782473/signaling 200 11ms","method":"POST","requestID":"e74992f0-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/265ffe82-7d22-4433-af77-a658d9782473/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e74bb5d0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:25:59Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff71b0dc3-a68c-41fb-bd25-045655cd5209","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"47b021e1-ab5c-4b41-8b46-7625e96d3379","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615959.986691} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.518924,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:25:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e74bb5d0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209","object_type":"device","rebac_allow":false,"scope_allow":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":"e74bb5d0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e74bb5d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f71b0dc3-a68c-41fb-bd25-045655cd5209/signaling 200 10ms","method":"POST","requestID":"e74bb5d0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ","level":"info","message":"auth send jwt","requestID":"026fd25aa90ed9ac7586f85bbc38ef7d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"026fd25aa90ed9ac7586f85bbc38ef7d","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/049544b0-4d05-4d9c-9c1b-05527549474a","requestID":"026fd25aa90ed9ac7586f85bbc38ef7d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.179668,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/049544b0-4d05-4d9c-9c1b-05527549474a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"026fd25aa90ed9ac7586f85bbc38ef7d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/049544b0-4d05-4d9c-9c1b-05527549474a","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615960,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"026fd25aa90ed9ac7586f85bbc38ef7d","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/049544b0-4d05-4d9c-9c1b-05527549474a","requestID":"026fd25aa90ed9ac7586f85bbc38ef7d"} experiment-1 | {"level":"info","message":"GET /experiments/049544b0-4d05-4d9c-9c1b-05527549474a 200 15ms","method":"GET","requestID":"026fd25aa90ed9ac7586f85bbc38ef7d","responseTime":15,"status":200,"url":"/experiments/049544b0-4d05-4d9c-9c1b-05527549474a"} gateway-1 | {"time_local":"02/Aug/2024:16:26:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/049544b0-4d05-4d9c-9c1b-05527549474a HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"026fd25aa90ed9ac7586f85bbc38ef7d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ","level":"info","message":"auth send jwt","requestID":"57450dcb4bbde9be6e61bd5550a93372"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"57450dcb4bbde9be6e61bd5550a93372","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/049544b0-4d05-4d9c-9c1b-05527549474a","requestID":"57450dcb4bbde9be6e61bd5550a93372"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.248402,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/049544b0-4d05-4d9c-9c1b-05527549474a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"57450dcb4bbde9be6e61bd5550a93372","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/049544b0-4d05-4d9c-9c1b-05527549474a","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615960,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"57450dcb4bbde9be6e61bd5550a93372","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/049544b0-4d05-4d9c-9c1b-05527549474a"},"level":"info","message":"Attempting to finish experiment","requestID":"57450dcb4bbde9be6e61bd5550a93372"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"e7588710-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.321021,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/accca963-bc8d-4b97-a2a4-1f2fefbe3fec","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e7588710-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/accca963-bc8d-4b97-a2a4-1f2fefbe3fec","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615960,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e7588710-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/accca963-bc8d-4b97-a2a4-1f2fefbe3fec","device":"265ffe82-7d22-4433-af77-a658d9782473","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"f71b0dc3-a68c-41fb-bd25-045655cd5209","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f71b0dc3-a68c-41fb-bd25-045655cd5209","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f71b0dc3-a68c-41fb-bd25-045655cd5209","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/accca963-bc8d-4b97-a2a4-1f2fefbe3fec' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/accca963-bc8d-4b97-a2a4-1f2fefbe3fec' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"accca963-bc8d-4b97-a2a4-1f2fefbe3fec","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Faccca963-bc8d-4b97-a2a4-1f2fefbe3fec': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Faccca963-bc8d-4b97-a2a4-1f2fefbe3fec","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"7a516bec-967a-448f-a1ea-c2ba01473204","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615960.0863695} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a5353524d5868dc79381358ab2bc31a3","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c1e8ded7-4064-4994-b9c0-b6c24dc9ed0a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615960.0868602} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a5353524d5868dc79381358ab2bc31a3","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"e7588710-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a0d58a0f7271dadd885320cc5243fb0a","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/accca963-bc8d-4b97-a2a4-1f2fefbe3fec"}}},"level":"info","message":"received a callback","requestID":"a5353524d5868dc79381358ab2bc31a3"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a0d58a0f7271dadd885320cc5243fb0a","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/accca963-bc8d-4b97-a2a4-1f2fefbe3fec"}}},"level":"info","message":"received a callback","requestID":"a0d58a0f7271dadd885320cc5243fb0a"} device-1 | {"data":{"peerconnection":"accca963-bc8d-4b97-a2a4-1f2fefbe3fec","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"e7588710-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/accca963-bc8d-4b97-a2a4-1f2fefbe3fec 204 45ms","method":"DELETE","requestID":"e7588710-50eb-11ef-8434-2f6d198c7397","responseTime":45,"status":204,"url":"/peerconnections/accca963-bc8d-4b97-a2a4-1f2fefbe3fec"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/049544b0-4d05-4d9c-9c1b-05527549474a"},"level":"info","message":"Successfully finished experiment","requestID":"57450dcb4bbde9be6e61bd5550a93372"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e7633570-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F265ffe82-7d22-4433-af77-a658d9782473","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e2b11642-e1d4-446c-99d5-1fae1e133440","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615960.1428208} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.423015,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e7633570-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/265ffe82-7d22-4433-af77-a658d9782473","object_type":"device","rebac_allow":false,"scope_allow":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":"e7633570-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F049544b0-4d05-4d9c-9c1b-05527549474a': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F049544b0-4d05-4d9c-9c1b-05527549474a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"a4331c12-be76-47f2-8f75-bebf8db46119","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615960.148222} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e7633570-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bfd7b0ea-09e5-4bb1-9b10-b6caf16dd6f1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615960.1485841} device-1 | {"level":"info","message":"POST /devices/265ffe82-7d22-4433-af77-a658d9782473/signaling 200 14ms","method":"POST","requestID":"e7633570-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/265ffe82-7d22-4433-af77-a658d9782473/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"57450dcb4bbde9be6e61bd5550a93372","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e765cd80-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff71b0dc3-a68c-41fb-bd25-045655cd5209","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e5681300-b6d6-4dee-9f7c-c05e877cde13","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615960.1577346} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.973829,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e765cd80-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209","object_type":"device","rebac_allow":false,"scope_allow":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":"e765cd80-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e765cd80-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f71b0dc3-a68c-41fb-bd25-045655cd5209/signaling 200 12ms","method":"POST","requestID":"e765cd80-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/f71b0dc3-a68c-41fb-bd25-045655cd5209/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/049544b0-4d05-4d9c-9c1b-05527549474a","requestID":"57450dcb4bbde9be6e61bd5550a93372"} gateway-1 | {"time_local":"02/Aug/2024:16:26:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/049544b0-4d05-4d9c-9c1b-05527549474a 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":"57450dcb4bbde9be6e61bd5550a93372"} experiment-1 | {"level":"info","message":"DELETE /experiments/049544b0-4d05-4d9c-9c1b-05527549474a 204 165ms","method":"DELETE","requestID":"57450dcb4bbde9be6e61bd5550a93372","responseTime":165,"status":204,"url":"/experiments/049544b0-4d05-4d9c-9c1b-05527549474a"} gateway-1 | {"time_local":"02/Aug/2024:16:26:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3271","request_time":"4.315","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"2d555deb75982016f81e97b8c5895547"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"a5353524d5868dc79381358ab2bc31a3","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26: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.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"a5353524d5868dc79381358ab2bc31a3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"a0d58a0f7271dadd885320cc5243fb0a","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26: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.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"a0d58a0f7271dadd885320cc5243fb0a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ","level":"info","message":"auth send jwt","requestID":"2ab13d27f9a4a2774818bf8f82b8b0f3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2ab13d27f9a4a2774818bf8f82b8b0f3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2ab13d27f9a4a2774818bf8f82b8b0f3"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:00Z"} gateway-1 | {"time_local":"02/Aug/2024:16:26:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3130","request_time":"2.804","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":"d2daed7ed07e1c89bb8c6e2293f1a527"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.466296,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"2ab13d27f9a4a2774818bf8f82b8b0f3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615960,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2ab13d27f9a4a2774818bf8f82b8b0f3","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/f71b0dc3-a68c-41fb-bd25-045655cd5209' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d394c84-1880-4d07-b796-e4e7bef928a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"98167137-971d-44d2-b613-da13ff7f57c2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615960.2432663} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2ab13d27f9a4a2774818bf8f82b8b0f3","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/265ffe82-7d22-4433-af77-a658d9782473' 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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"33ff3139-e787-4a16-8e95-29b5aec8b32d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615960.2486765} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2ab13d27f9a4a2774818bf8f82b8b0f3","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d394c84-1880-4d07-b796-e4e7bef928a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"ee490f8e-6c85-4650-a390-17b2e23755fd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615960.263299} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3d9447d9-66cb-48c0-80aa-a1416ca906fe","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615960.2635524} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"2ab13d27f9a4a2774818bf8f82b8b0f3","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d394c84-1880-4d07-b796-e4e7bef928a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d394c84-1880-4d07-b796-e4e7bef928a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:00.263267815Z"}]},"request_id":"0c8117ef-3fcc-43a6-8e77-10c85037ed20","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615960.2686453} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2ab13d27f9a4a2774818bf8f82b8b0f3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2ab13d27f9a4a2774818bf8f82b8b0f3"} gateway-1 | {"time_local":"02/Aug/2024:16:26:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2ab13d27f9a4a2774818bf8f82b8b0f3"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"2ab13d27f9a4a2774818bf8f82b8b0f3","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ","level":"info","message":"auth send jwt","requestID":"f1e933e781bb0fa0603de7cfa79a1886"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f1e933e781bb0fa0603de7cfa79a1886","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f1e933e781bb0fa0603de7cfa79a1886"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.726137,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f1e933e781bb0fa0603de7cfa79a1886","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615960,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f1e933e781bb0fa0603de7cfa79a1886","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b9c9e6-1ec9-4de6-b093-ecad07306b47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d8ff0688-3e0a-414a-8a82-ae5dd37f8b89","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615960.2931957} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f1e933e781bb0fa0603de7cfa79a1886","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9cb2d42e-0a32-4a03-9505-f7f1744e5c07","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615960.297479} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"f1e933e781bb0fa0603de7cfa79a1886","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b9c9e6-1ec9-4de6-b093-ecad07306b47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"69cec416-7936-4d4f-b63d-7a2d53bfbae9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615960.308216} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dd79ea84-4075-4a77-8aa6-748ece16fd44","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615960.308411} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"f1e933e781bb0fa0603de7cfa79a1886","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b9c9e6-1ec9-4de6-b093-ecad07306b47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b9c9e6-1ec9-4de6-b093-ecad07306b47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:00.308181755Z"}]},"request_id":"40dced12-b0af-4d9e-8b7b-71059fb086d3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615960.3123684} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f1e933e781bb0fa0603de7cfa79a1886","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f1e933e781bb0fa0603de7cfa79a1886"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"f1e933e781bb0fa0603de7cfa79a1886","responseTime":38,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f1e933e781bb0fa0603de7cfa79a1886"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ","level":"info","message":"auth send jwt","requestID":"13e9b844963ffedd65d856da28fc7e34"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"13e9b844963ffedd65d856da28fc7e34","responseTime":8,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ","level":"info","message":"auth send jwt","requestID":"22aa0b2a1c5f3a173c65769ef1008324"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"22aa0b2a1c5f3a173c65769ef1008324","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"13e9b844963ffedd65d856da28fc7e34"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"22aa0b2a1c5f3a173c65769ef1008324"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.655208,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"13e9b844963ffedd65d856da28fc7e34","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615960,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"13e9b844963ffedd65d856da28fc7e34","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Received request.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Sent response.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.821515,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"22aa0b2a1c5f3a173c65769ef1008324","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615960,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"22aa0b2a1c5f3a173c65769ef1008324","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d394c84-1880-4d07-b796-e4e7bef928a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d394c84-1880-4d07-b796-e4e7bef928a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:00.263267815Z"}]},"request_id":"a6f5f49d-2e2c-4a7e-b050-75a023e31031","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615960.829903} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"13e9b844963ffedd65d856da28fc7e34","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b9c9e6-1ec9-4de6-b093-ecad07306b47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b9c9e6-1ec9-4de6-b093-ecad07306b47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:00.308181755Z"}]},"request_id":"92ce2a8e-3e9d-470b-b228-7b516b2baf54","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615960.8306363} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"22aa0b2a1c5f3a173c65769ef1008324","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9f8728f0-19ba-465c-837b-25bd0b522018","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615960.8359504} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"13e9b844963ffedd65d856da28fc7e34","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4a2f74d5-f398-4d2c-8144-0a7f6bf42a76","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615960.8377073} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"22aa0b2a1c5f3a173c65769ef1008324","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b9c9e6-1ec9-4de6-b093-ecad07306b47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b9c9e6-1ec9-4de6-b093-ecad07306b47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:00.308181755Z"}]},"request_id":"90543411-9a66-4007-b644-8c1c77f337fd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615960.8410583} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"22aa0b2a1c5f3a173c65769ef1008324","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"22aa0b2a1c5f3a173c65769ef1008324"} device-1 | {"level":"info","message":"PATCH /devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47 200 23ms","method":"PATCH","requestID":"22aa0b2a1c5f3a173c65769ef1008324","responseTime":23,"status":200,"url":"/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47"} gateway-1 | {"time_local":"02/Aug/2024:16:26:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.034","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"22aa0b2a1c5f3a173c65769ef1008324"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ","level":"info","message":"auth send jwt","requestID":"f1efc7c001f17b0747aa553d564f9559"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f1efc7c001f17b0747aa553d564f9559","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f1efc7c001f17b0747aa553d564f9559"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d394c84-1880-4d07-b796-e4e7bef928a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d394c84-1880-4d07-b796-e4e7bef928a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:00.263267815Z"}]},"request_id":"b74b4760-d2d1-47b4-b757-7bf2a6751270","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615960.852406} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"13e9b844963ffedd65d856da28fc7e34","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.792073,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:00Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"13e9b844963ffedd65d856da28fc7e34"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f1efc7c001f17b0747aa553d564f9559","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615960,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ"} gateway-1 | {"time_local":"02/Aug/2024:16:26:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3d394c84-1880-4d07-b796-e4e7bef928a9 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.047","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"13e9b844963ffedd65d856da28fc7e34"} device-1 | {"level":"info","message":"PATCH /devices/3d394c84-1880-4d07-b796-e4e7bef928a9 200 37ms","method":"PATCH","requestID":"13e9b844963ffedd65d856da28fc7e34","responseTime":37,"status":200,"url":"/devices/3d394c84-1880-4d07-b796-e4e7bef928a9"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f1efc7c001f17b0747aa553d564f9559","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ","level":"info","message":"auth send jwt","requestID":"a813c098ed628cadf7b84f5d08cd82d3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a813c098ed628cadf7b84f5d08cd82d3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a813c098ed628cadf7b84f5d08cd82d3"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.690039,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a813c098ed628cadf7b84f5d08cd82d3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615960,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a813c098ed628cadf7b84f5d08cd82d3","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f1efc7c001f17b0747aa553d564f9559"} device-1 | {"level":"info","message":"POST /devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47/websocket 200 18ms","method":"POST","requestID":"f1efc7c001f17b0747aa553d564f9559","responseTime":18,"status":200,"url":"/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:26:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"f1efc7c001f17b0747aa553d564f9559"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a813c098ed628cadf7b84f5d08cd82d3"} gateway-1 | {"time_local":"02/Aug/2024:16:26:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3d394c84-1880-4d07-b796-e4e7bef928a9/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"a813c098ed628cadf7b84f5d08cd82d3"} device-1 | {"level":"info","message":"POST /devices/3d394c84-1880-4d07-b796-e4e7bef928a9/websocket 200 16ms","method":"POST","requestID":"a813c098ed628cadf7b84f5d08cd82d3","responseTime":16,"status":200,"url":"/devices/3d394c84-1880-4d07-b796-e4e7bef928a9/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ","level":"info","message":"auth send jwt","requestID":"2cd19e40f85f8aa506a79b5af86fe154"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2cd19e40f85f8aa506a79b5af86fe154","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2cd19e40f85f8aa506a79b5af86fe154"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.698142,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"2cd19e40f85f8aa506a79b5af86fe154","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615960,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2cd19e40f85f8aa506a79b5af86fe154","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d394c84-1880-4d07-b796-e4e7bef928a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d394c84-1880-4d07-b796-e4e7bef928a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:00.263267815Z"}]},"request_id":"871b3840-d748-4cf8-92b8-73f45af077dc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615960.916411} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2cd19e40f85f8aa506a79b5af86fe154","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2cd19e40f85f8aa506a79b5af86fe154"} device-1 | {"level":"info","message":"GET /devices/3d394c84-1880-4d07-b796-e4e7bef928a9? 200 15ms","method":"GET","requestID":"2cd19e40f85f8aa506a79b5af86fe154","responseTime":15,"status":200,"url":"/devices/3d394c84-1880-4d07-b796-e4e7bef928a9?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3d394c84-1880-4d07-b796-e4e7bef928a9? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2cd19e40f85f8aa506a79b5af86fe154"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ","level":"info","message":"auth send jwt","requestID":"9b16a2de979cbac13983907dc8308801"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9b16a2de979cbac13983907dc8308801","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9b16a2de979cbac13983907dc8308801"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.678993,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"9b16a2de979cbac13983907dc8308801","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615960,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9b16a2de979cbac13983907dc8308801","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b9c9e6-1ec9-4de6-b093-ecad07306b47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b9c9e6-1ec9-4de6-b093-ecad07306b47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:00.308181755Z"}]},"request_id":"5589b45c-4ffe-49a4-9678-d7c456b17c28","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615960.939351} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9b16a2de979cbac13983907dc8308801","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9b16a2de979cbac13983907dc8308801"} gateway-1 | {"time_local":"02/Aug/2024:16:26:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9b16a2de979cbac13983907dc8308801"} device-1 | {"level":"info","message":"GET /devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47? 200 15ms","method":"GET","requestID":"9b16a2de979cbac13983907dc8308801","responseTime":15,"status":200,"url":"/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ","level":"info","message":"auth send jwt","requestID":"7431326e5900ef0c61e252e61b32f607"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7431326e5900ef0c61e252e61b32f607","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"7431326e5900ef0c61e252e61b32f607"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.315217,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"7431326e5900ef0c61e252e61b32f607","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615960,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7431326e5900ef0c61e252e61b32f607","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8c4a75c3-997a-45df-8884-cdba749ae223"},"level":"info","message":"Attempting to run experiment","requestID":"7431326e5900ef0c61e252e61b32f607"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8c4a75c3-997a-45df-8884-cdba749ae223"},"level":"info","message":"Attempting to book experiment","requestID":"7431326e5900ef0c61e252e61b32f607"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8c4a75c3-997a-45df-8884-cdba749ae223"},"level":"info","message":"Successfully booked experiment","requestID":"7431326e5900ef0c61e252e61b32f607"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e7e64820-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e7e69640-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.087816,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Received request.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e7e64820-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615960,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e7e64820-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Sent response.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.897895,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e7e69640-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615960,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e7e69640-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d394c84-1880-4d07-b796-e4e7bef928a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d394c84-1880-4d07-b796-e4e7bef928a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:00.263267815Z"}]},"request_id":"79656bc4-5040-4697-82ae-b0abce1ff709","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615961.0064163} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e7e64820-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b9c9e6-1ec9-4de6-b093-ecad07306b47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b9c9e6-1ec9-4de6-b093-ecad07306b47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:00.308181755Z"}]},"request_id":"914dd61d-02c4-4337-9b29-16ea8bde5ae9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615961.008046} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e7e69640-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e7e64820-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/3d394c84-1880-4d07-b796-e4e7bef928a9? 200 20ms","method":"GET","requestID":"e7e64820-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/3d394c84-1880-4d07-b796-e4e7bef928a9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e7e69640-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47? 200 19ms","method":"GET","requestID":"e7e69640-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8c4a75c3-997a-45df-8884-cdba749ae223"},"level":"info","message":"Setting up experiment","requestID":"7431326e5900ef0c61e252e61b32f607"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8c4a75c3-997a-45df-8884-cdba749ae223"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"7431326e5900ef0c61e252e61b32f607"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8c4a75c3-997a-45df-8884-cdba749ae223"},"level":"info","message":"Successfully locked booking for experiment","requestID":"7431326e5900ef0c61e252e61b32f607"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8c4a75c3-997a-45df-8884-cdba749ae223"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"7431326e5900ef0c61e252e61b32f607"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8c4a75c3-997a-45df-8884-cdba749ae223"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"7431326e5900ef0c61e252e61b32f607"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8c4a75c3-997a-45df-8884-cdba749ae223"},"level":"info","message":"Attempting to update booking for experiment","requestID":"7431326e5900ef0c61e252e61b32f607"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8c4a75c3-997a-45df-8884-cdba749ae223"},"level":"info","message":"Successfully updated booking for experiment","requestID":"7431326e5900ef0c61e252e61b32f607"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8c4a75c3-997a-45df-8884-cdba749ae223"},"level":"info","message":"Successfully set up experiment","requestID":"7431326e5900ef0c61e252e61b32f607"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e7f192c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e7f1e0e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e7f22f00-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:01Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8c4a75c3-997a-45df-8884-cdba749ae223"},"level":"info","message":"Successfully running experiment","requestID":"7431326e5900ef0c61e252e61b32f607"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.024176,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Received request.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Sent response.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.685235,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e7f192c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615960,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"e7f192c0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e7f1e0e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615960,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e7f1e0e0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58324","level":"info","msg":"Received request.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:01Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d394c84-1880-4d07-b796-e4e7bef928a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d394c84-1880-4d07-b796-e4e7bef928a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:00.263267815Z"}]},"request_id":"d3eb21d2-a394-4ff4-ba69-8a77c50a416e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615961.083213} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d394c84-1880-4d07-b796-e4e7bef928a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b00eba42-b702-4b72-9b1c-fcb566e6676e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615961.0833356} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e7f192c0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58324","level":"info","msg":"Sent response.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.710468,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e7f22f00-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9","object_type":"device","rebac_allow":false,"scope_allow":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":"e7f22f00-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b9c9e6-1ec9-4de6-b093-ecad07306b47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b9c9e6-1ec9-4de6-b093-ecad07306b47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:00.308181755Z"}]},"request_id":"08baa5a0-02ec-4750-bbd4-f392bf4085a4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615961.0850222} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"e7f1e0e0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e7f192c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/3d394c84-1880-4d07-b796-e4e7bef928a9? 200 23ms","method":"GET","requestID":"e7f192c0-50eb-11ef-8434-2f6d198c7397","responseTime":23,"status":200,"url":"/devices/3d394c84-1880-4d07-b796-e4e7bef928a9?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e7f22f00-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/3d394c84-1880-4d07-b796-e4e7bef928a9/signaling 200 20ms","method":"POST","requestID":"e7f22f00-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/3d394c84-1880-4d07-b796-e4e7bef928a9/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e7f1e0e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47? 200 23ms","method":"GET","requestID":"e7f1e0e0-50eb-11ef-8434-2f6d198c7397","responseTime":23,"status":200,"url":"/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47?"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8c4a75c3-997a-45df-8884-cdba749ae223#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8c4a75c3-997a-45df-8884-cdba749ae223","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"6034b470-6dda-40cf-9fa4-db64c1dbc99e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615961.0945318} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e7f5b170-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"92640a45-c511-40ab-b857-fb22f6175471","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615961.0948446} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"7431326e5900ef0c61e252e61b32f607","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e7f5ff90-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Received request.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:01Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d394c84-1880-4d07-b796-e4e7bef928a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f3f8f32a-91f3-49bd-bd47-819c4d606584","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615961.1011474} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b9c9e6-1ec9-4de6-b093-ecad07306b47","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"150d04d1-710c-4f17-8060-6f0d0b21d72e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615961.1011395} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.866879,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e7f5b170-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47","object_type":"device","rebac_allow":false,"scope_allow":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":"e7f5b170-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Sent response.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.854941,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:01Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/8c4a75c3-997a-45df-8884-cdba749ae223","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"7431326e5900ef0c61e252e61b32f607"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e7f5ff90-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9","object_type":"device","rebac_allow":false,"scope_allow":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":"e7f5ff90-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:26:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1296","request_time":"0.159","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7431326e5900ef0c61e252e61b32f607"} experiment-1 | {"level":"info","message":"POST /experiments? 201 153ms","method":"POST","requestID":"7431326e5900ef0c61e252e61b32f607","responseTime":153,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e7f5b170-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47/signaling 200 13ms","method":"POST","requestID":"e7f5b170-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e7f5ff90-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/3d394c84-1880-4d07-b796-e4e7bef928a9/signaling 200 12ms","method":"POST","requestID":"e7f5ff90-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/3d394c84-1880-4d07-b796-e4e7bef928a9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MX0.pxrz6jrfSfC3sW9n1T8-hlm6KemhVVITRGmTZGTE1sU","level":"info","message":"auth send jwt","requestID":"f0d1531614fce367a68a0462acf74d27"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f0d1531614fce367a68a0462acf74d27","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f0d1531614fce367a68a0462acf74d27"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e7f84980-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.641762,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Received request.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f0d1531614fce367a68a0462acf74d27","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615961,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MX0.pxrz6jrfSfC3sW9n1T8-hlm6KemhVVITRGmTZGTE1sU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f0d1531614fce367a68a0462acf74d27","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Sent response.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.762601,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:01Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b9c9e6-1ec9-4de6-b093-ecad07306b47","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0b661c9d-e6d6-48e5-ad98-a238fbb69a82","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615961.1161127} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e7f84980-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47","object_type":"device","rebac_allow":false,"scope_allow":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":"e7f84980-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d394c84-1880-4d07-b796-e4e7bef928a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d394c84-1880-4d07-b796-e4e7bef928a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:00.263267815Z"}]},"request_id":"42345876-9fb1-4b18-8bfe-7ca310b1384c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615961.121756} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e7f84980-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47/signaling 200 10ms","method":"POST","requestID":"e7f84980-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f0d1531614fce367a68a0462acf74d27","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8c4a75c3-997a-45df-8884-cdba749ae223"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"7431326e5900ef0c61e252e61b32f607"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e7fa4550-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e7fa6c60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f0d1531614fce367a68a0462acf74d27"} gateway-1 | {"time_local":"02/Aug/2024:16:26:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3d394c84-1880-4d07-b796-e4e7bef928a9? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f0d1531614fce367a68a0462acf74d27"} device-1 | {"level":"info","message":"GET /devices/3d394c84-1880-4d07-b796-e4e7bef928a9? 200 17ms","method":"GET","requestID":"f0d1531614fce367a68a0462acf74d27","responseTime":17,"status":200,"url":"/devices/3d394c84-1880-4d07-b796-e4e7bef928a9?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.826195,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Received request.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e7fa4550-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615960,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e7fa4550-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Sent response.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.7543,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e7fa6c60-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615960,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e7fa6c60-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MX0.pxrz6jrfSfC3sW9n1T8-hlm6KemhVVITRGmTZGTE1sU","level":"info","message":"auth send jwt","requestID":"db22ed13cd9f412ca7eec8945c50540f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"db22ed13cd9f412ca7eec8945c50540f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"db22ed13cd9f412ca7eec8945c50540f"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d394c84-1880-4d07-b796-e4e7bef928a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d394c84-1880-4d07-b796-e4e7bef928a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:00.263267815Z"}]},"request_id":"32484af4-c1ba-4b71-9e66-669a58c1cca9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615961.132998} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e7fa4550-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b9c9e6-1ec9-4de6-b093-ecad07306b47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b9c9e6-1ec9-4de6-b093-ecad07306b47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:00.308181755Z"}]},"request_id":"23d8f6c1-a37f-4ef4-b706-d9b12524752d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615961.1343582} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e7fa6c60-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:01Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e7fa4550-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.776265,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:01Z"} device-1 | {"level":"info","message":"GET /devices/3d394c84-1880-4d07-b796-e4e7bef928a9? 200 13ms","method":"GET","requestID":"e7fa4550-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/3d394c84-1880-4d07-b796-e4e7bef928a9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e7fa6c60-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db22ed13cd9f412ca7eec8945c50540f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615961,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MX0.pxrz6jrfSfC3sW9n1T8-hlm6KemhVVITRGmTZGTE1sU"} device-1 | {"level":"info","message":"GET /devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47? 200 13ms","method":"GET","requestID":"e7fa6c60-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47?"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"db22ed13cd9f412ca7eec8945c50540f","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8c4a75c3-997a-45df-8884-cdba749ae223"},"level":"info","message":"Building connection plan","requestID":"7431326e5900ef0c61e252e61b32f607"} 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":"6985a646-65d5-4394-aa81-214ba580a651"},{"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":"a004e698-5add-4a49-8aae-0214d14abdfa"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"8bc7ca99-300b-47e5-8dcb-49335133dc62"}]},"level":"info","message":"Built pairwise service configurations","requestID":"7431326e5900ef0c61e252e61b32f607"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"7431326e5900ef0c61e252e61b32f607"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"e7fcdd60-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b9c9e6-1ec9-4de6-b093-ecad07306b47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b9c9e6-1ec9-4de6-b093-ecad07306b47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:00.308181755Z"}]},"request_id":"56e22c89-cdbd-4a0b-81bf-bdb842abe68f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615961.1423833} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"db22ed13cd9f412ca7eec8945c50540f","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.836183,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e7fcdd60-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615960,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2MH0.L91hHv7CBDPhnUispBGvCb5zS0qSrzkD1BT4KeaOiNQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e7fcdd60-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"db22ed13cd9f412ca7eec8945c50540f"} gateway-1 | {"time_local":"02/Aug/2024:16:26:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"db22ed13cd9f412ca7eec8945c50540f"} device-1 | {"level":"info","message":"GET /devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47? 200 15ms","method":"GET","requestID":"db22ed13cd9f412ca7eec8945c50540f","responseTime":15,"status":200,"url":"/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47?"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"f0a9a12f-2879-4fb7-a383-763035c06733","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615961.1536937} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"095ae87e-05a3-4a39-9164-efe168fad44a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615961.1539826} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e7fcdd60-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"e7fcdd60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"e7fcdd60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/77935f6e-71cb-4381-86a0-5e18810c248d'","requestID":"e7fcdd60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/77935f6e-71cb-4381-86a0-5e18810c248d'","requestID":"e7fcdd60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"e7fcdd60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"e7fcdd60-50eb-11ef-8434-2f6d198c7397","responseTime":25,"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":"e7fcdd60-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8c4a75c3-997a-45df-8884-cdba749ae223"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"7431326e5900ef0c61e252e61b32f607"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e804a590-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:01Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d394c84-1880-4d07-b796-e4e7bef928a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"07233678-b7d6-478d-b5d7-0b9cf637bbaf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615961.1971009} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.545864,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e804a590-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9","object_type":"device","rebac_allow":false,"scope_allow":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":"e804a590-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e804a590-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/3d394c84-1880-4d07-b796-e4e7bef928a9/signaling 200 7ms","method":"POST","requestID":"e804a590-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/devices/3d394c84-1880-4d07-b796-e4e7bef928a9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e8060520-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:01Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b9c9e6-1ec9-4de6-b093-ecad07306b47","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bc56b5bd-e1fa-4bd9-a611-d27cb3968cf9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615961.20652} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.4764,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e8060520-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47","object_type":"device","rebac_allow":false,"scope_allow":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":"e8060520-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e8060520-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47/signaling 200 8ms","method":"POST","requestID":"e8060520-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47/signaling"} device-1 | {"device":"f7b9c9e6-1ec9-4de6-b093-ecad07306b47","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"77935f6e-71cb-4381-86a0-5e18810c248d","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"3d394c84-1880-4d07-b796-e4e7bef928a9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"77935f6e-71cb-4381-86a0-5e18810c248d","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"3d394c84-1880-4d07-b796-e4e7bef928a9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3d394c84-1880-4d07-b796-e4e7bef928a9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3d394c84-1880-4d07-b796-e4e7bef928a9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3d394c84-1880-4d07-b796-e4e7bef928a9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/77935f6e-71cb-4381-86a0-5e18810c248d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"77935f6e-71cb-4381-86a0-5e18810c248d","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b1a46fddf5871660b9e642c643cca148","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":"b1a46fddf5871660b9e642c643cca148","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/77935f6e-71cb-4381-86a0-5e18810c248d"}}},"level":"info","message":"received a callback","requestID":"b1a46fddf5871660b9e642c643cca148"} device-1 | {"device":"f7b9c9e6-1ec9-4de6-b093-ecad07306b47","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f7b9c9e6-1ec9-4de6-b093-ecad07306b47","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f7b9c9e6-1ec9-4de6-b093-ecad07306b47","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"b1a46fddf5871660b9e642c643cca148","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26: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":"b1a46fddf5871660b9e642c643cca148"} device-1 | {"data":{"peerconnection":"77935f6e-71cb-4381-86a0-5e18810c248d","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"3d394c84-1880-4d07-b796-e4e7bef928a9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f7b9c9e6-1ec9-4de6-b093-ecad07306b47","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3d394c84-1880-4d07-b796-e4e7bef928a9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f7b9c9e6-1ec9-4de6-b093-ecad07306b47","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"77935f6e-71cb-4381-86a0-5e18810c248d","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/77935f6e-71cb-4381-86a0-5e18810c248d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"77935f6e-71cb-4381-86a0-5e18810c248d","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3aaee48397f7646ad3456bfc01d836b1","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":"3aaee48397f7646ad3456bfc01d836b1","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/77935f6e-71cb-4381-86a0-5e18810c248d"}}},"level":"info","message":"received a callback","requestID":"3aaee48397f7646ad3456bfc01d836b1"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"e94255b0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:03Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F77935f6e-71cb-4381-86a0-5e18810c248d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8444a365-d3a1-4fdb-8a97-10b1f4dac59f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615963.282173} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.890208,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/77935f6e-71cb-4381-86a0-5e18810c248d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e94255b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/77935f6e-71cb-4381-86a0-5e18810c248d","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":"e94255b0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"e94255b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/77935f6e-71cb-4381-86a0-5e18810c248d 200 13ms","method":"GET","requestID":"e94255b0-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/peerconnections/77935f6e-71cb-4381-86a0-5e18810c248d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 43ms","method":"POST","requestID":"3aaee48397f7646ad3456bfc01d836b1","responseTime":43,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26: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.046","http_referrer":"","http_user_agent":"node-fetch","requestID":"3aaee48397f7646ad3456bfc01d836b1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e947d3f0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:03Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d394c84-1880-4d07-b796-e4e7bef928a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c529b4f1-1607-4c22-938b-5663cc34b610","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615963.3180778} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.919551,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e947d3f0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9","object_type":"device","rebac_allow":false,"scope_allow":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":"e947d3f0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e947d3f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/3d394c84-1880-4d07-b796-e4e7bef928a9/signaling 200 13ms","method":"POST","requestID":"e947d3f0-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/3d394c84-1880-4d07-b796-e4e7bef928a9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e94a44f0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:03Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b9c9e6-1ec9-4de6-b093-ecad07306b47","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7ea8c222-eeb7-4c92-94cf-2d3eabf67f18","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615963.3341076} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.903021,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e94a44f0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47","object_type":"device","rebac_allow":false,"scope_allow":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":"e94a44f0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e94a44f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47/signaling 200 14ms","method":"POST","requestID":"e94a44f0-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2M30.Cen633hBgRQXAjYtVw2BVDnA-OiXxNapg0EwgfnLSjE","level":"info","message":"auth send jwt","requestID":"11fb836b1d1cfb2661589bced39c89a2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"11fb836b1d1cfb2661589bced39c89a2","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/8c4a75c3-997a-45df-8884-cdba749ae223","requestID":"11fb836b1d1cfb2661589bced39c89a2"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.180256,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8c4a75c3-997a-45df-8884-cdba749ae223","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"11fb836b1d1cfb2661589bced39c89a2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/8c4a75c3-997a-45df-8884-cdba749ae223","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615963,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2M30.Cen633hBgRQXAjYtVw2BVDnA-OiXxNapg0EwgfnLSjE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"11fb836b1d1cfb2661589bced39c89a2","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/8c4a75c3-997a-45df-8884-cdba749ae223","requestID":"11fb836b1d1cfb2661589bced39c89a2"} gateway-1 | {"time_local":"02/Aug/2024:16:26:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/8c4a75c3-997a-45df-8884-cdba749ae223 HTTP/1.1","status": "200","body_bytes_sent":"1369","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"11fb836b1d1cfb2661589bced39c89a2"} experiment-1 | {"level":"info","message":"GET /experiments/8c4a75c3-997a-45df-8884-cdba749ae223 200 15ms","method":"GET","requestID":"11fb836b1d1cfb2661589bced39c89a2","responseTime":15,"status":200,"url":"/experiments/8c4a75c3-997a-45df-8884-cdba749ae223"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2M30.Cen633hBgRQXAjYtVw2BVDnA-OiXxNapg0EwgfnLSjE","level":"info","message":"auth send jwt","requestID":"7002915375de728a2f9729432870889d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7002915375de728a2f9729432870889d","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/8c4a75c3-997a-45df-8884-cdba749ae223","requestID":"7002915375de728a2f9729432870889d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.268823,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8c4a75c3-997a-45df-8884-cdba749ae223","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"7002915375de728a2f9729432870889d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/8c4a75c3-997a-45df-8884-cdba749ae223","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615963,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2M30.Cen633hBgRQXAjYtVw2BVDnA-OiXxNapg0EwgfnLSjE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7002915375de728a2f9729432870889d","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8c4a75c3-997a-45df-8884-cdba749ae223"},"level":"info","message":"Attempting to finish experiment","requestID":"7002915375de728a2f9729432870889d"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"e955b6a0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.152184,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/77935f6e-71cb-4381-86a0-5e18810c248d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e955b6a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/77935f6e-71cb-4381-86a0-5e18810c248d","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615963,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2M30.Cen633hBgRQXAjYtVw2BVDnA-OiXxNapg0EwgfnLSjE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e955b6a0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"f7b9c9e6-1ec9-4de6-b093-ecad07306b47","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f7b9c9e6-1ec9-4de6-b093-ecad07306b47","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f7b9c9e6-1ec9-4de6-b093-ecad07306b47","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3d394c84-1880-4d07-b796-e4e7bef928a9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3d394c84-1880-4d07-b796-e4e7bef928a9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3d394c84-1880-4d07-b796-e4e7bef928a9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/77935f6e-71cb-4381-86a0-5e18810c248d' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/77935f6e-71cb-4381-86a0-5e18810c248d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"77935f6e-71cb-4381-86a0-5e18810c248d","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F77935f6e-71cb-4381-86a0-5e18810c248d': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F77935f6e-71cb-4381-86a0-5e18810c248d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"b5813ec7-5e81-42d5-99ac-4b625d7018a8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615963.4259617} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6f32713335cd7ebf48d2a674b6003679","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"104c14e6-2f93-46a7-803f-3aeeab198271","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615963.4264643} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6f32713335cd7ebf48d2a674b6003679","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"e955b6a0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1df13b0456e58add02080754d0e405e9","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/77935f6e-71cb-4381-86a0-5e18810c248d"}}},"level":"info","message":"received a callback","requestID":"6f32713335cd7ebf48d2a674b6003679"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1df13b0456e58add02080754d0e405e9","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/77935f6e-71cb-4381-86a0-5e18810c248d"}}},"level":"info","message":"received a callback","requestID":"1df13b0456e58add02080754d0e405e9"} device-1 | {"data":{"peerconnection":"77935f6e-71cb-4381-86a0-5e18810c248d","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"e955b6a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/77935f6e-71cb-4381-86a0-5e18810c248d 204 51ms","method":"DELETE","requestID":"e955b6a0-50eb-11ef-8434-2f6d198c7397","responseTime":51,"status":204,"url":"/peerconnections/77935f6e-71cb-4381-86a0-5e18810c248d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8c4a75c3-997a-45df-8884-cdba749ae223"},"level":"info","message":"Successfully finished experiment","requestID":"7002915375de728a2f9729432870889d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e9610140-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:03Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d394c84-1880-4d07-b796-e4e7bef928a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fec6fead-8864-4391-8295-6d5923333dc0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615963.4831991} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.287339,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e9610140-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9","object_type":"device","rebac_allow":false,"scope_allow":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":"e9610140-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e9610140-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/3d394c84-1880-4d07-b796-e4e7bef928a9/signaling 200 15ms","method":"POST","requestID":"e9610140-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/3d394c84-1880-4d07-b796-e4e7bef928a9/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8c4a75c3-997a-45df-8884-cdba749ae223': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8c4a75c3-997a-45df-8884-cdba749ae223","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"aa0bff94-c4cf-409d-9e87-f364619ed3c6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615963.4915466} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"84c699d8-6443-4b46-88cd-4e57cfb38b9a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615963.4921339} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"7002915375de728a2f9729432870889d","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e963e770-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:03Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff7b9c9e6-1ec9-4de6-b093-ecad07306b47","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c2fcac7b-5aff-4d64-9ddf-a67f639b9001","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615963.502082} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.652713,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e963e770-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47","object_type":"device","rebac_allow":false,"scope_allow":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":"e963e770-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e963e770-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47/signaling 200 14ms","method":"POST","requestID":"e963e770-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/f7b9c9e6-1ec9-4de6-b093-ecad07306b47/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/8c4a75c3-997a-45df-8884-cdba749ae223","requestID":"7002915375de728a2f9729432870889d"} gateway-1 | {"time_local":"02/Aug/2024:16:26:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/8c4a75c3-997a-45df-8884-cdba749ae223 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.168","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7002915375de728a2f9729432870889d"} gateway-1 | {"time_local":"02/Aug/2024:16:26:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3130","request_time":"2.681","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"03239710ae2d51410fd24b59489bec8e"} gateway-1 | {"time_local":"02/Aug/2024:16:26:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3132","request_time":"2.672","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"0ccac6fc250c2fdf6cfd07d1541fce0b"} experiment-1 | {"level":"info","message":"DELETE /experiments/8c4a75c3-997a-45df-8884-cdba749ae223 204 165ms","method":"DELETE","requestID":"7002915375de728a2f9729432870889d","responseTime":165,"status":204,"url":"/experiments/8c4a75c3-997a-45df-8884-cdba749ae223"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 124ms","method":"POST","requestID":"6f32713335cd7ebf48d2a674b6003679","responseTime":124,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26: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.129","http_referrer":"","http_user_agent":"node-fetch","requestID":"6f32713335cd7ebf48d2a674b6003679"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"1df13b0456e58add02080754d0e405e9","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26: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.130","http_referrer":"","http_user_agent":"node-fetch","requestID":"1df13b0456e58add02080754d0e405e9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2M30.Cen633hBgRQXAjYtVw2BVDnA-OiXxNapg0EwgfnLSjE","level":"info","message":"auth send jwt","requestID":"39968e25cc2f32c45a98e2aa6e936de8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"39968e25cc2f32c45a98e2aa6e936de8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"39968e25cc2f32c45a98e2aa6e936de8"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/3d394c84-1880-4d07-b796-e4e7bef928a9' closed"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.8296,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"39968e25cc2f32c45a98e2aa6e936de8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615963,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2M30.Cen633hBgRQXAjYtVw2BVDnA-OiXxNapg0EwgfnLSjE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"39968e25cc2f32c45a98e2aa6e936de8","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/f7b9c9e6-1ec9-4de6-b093-ecad07306b47' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f913bdc-455d-4e7d-93be-253dc73e7206","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6a9914c3-2677-430f-8481-05c1770ca002","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615963.5854747} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"39968e25cc2f32c45a98e2aa6e936de8","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cee10596-0cbe-4c7a-94b6-09208a36c89f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615963.5912805} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"39968e25cc2f32c45a98e2aa6e936de8","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f913bdc-455d-4e7d-93be-253dc73e7206","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"e46711db-8124-4284-b9a9-477d9b856d58","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615963.6022065} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dcb7b0b8-b2f2-4693-81db-1b704cd2d6ac","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615963.6024642} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"39968e25cc2f32c45a98e2aa6e936de8","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f913bdc-455d-4e7d-93be-253dc73e7206","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f913bdc-455d-4e7d-93be-253dc73e7206","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:03.602167902Z"}]},"request_id":"8b1721f1-40df-44ff-b614-afdf5aa77708","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615963.6071527} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"39968e25cc2f32c45a98e2aa6e936de8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"39968e25cc2f32c45a98e2aa6e936de8"} gateway-1 | {"time_local":"02/Aug/2024:16:26:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"39968e25cc2f32c45a98e2aa6e936de8"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"39968e25cc2f32c45a98e2aa6e936de8","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2M30.Cen633hBgRQXAjYtVw2BVDnA-OiXxNapg0EwgfnLSjE","level":"info","message":"auth send jwt","requestID":"e692f1f18f74499c0431676abc0cfe27"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e692f1f18f74499c0431676abc0cfe27","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e692f1f18f74499c0431676abc0cfe27"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.818625,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e692f1f18f74499c0431676abc0cfe27","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615963,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2M30.Cen633hBgRQXAjYtVw2BVDnA-OiXxNapg0EwgfnLSjE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e692f1f18f74499c0431676abc0cfe27","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6330407f-2ba5-4d74-af1d-e0044c3dffc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3af1c189-4bd6-4e73-884c-264882cc4c3d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615963.6315417} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e692f1f18f74499c0431676abc0cfe27","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0562f235-b4a4-4de4-be70-402c06cee0fb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615963.6365128} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e692f1f18f74499c0431676abc0cfe27","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6330407f-2ba5-4d74-af1d-e0044c3dffc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"4c85fd93-5175-45d1-af4d-2b2fb91f75e3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615963.653036} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a4cc2b89-2440-41c2-8b45-dd3ba4b1a941","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615963.6531477} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"e692f1f18f74499c0431676abc0cfe27","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6330407f-2ba5-4d74-af1d-e0044c3dffc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6330407f-2ba5-4d74-af1d-e0044c3dffc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:03.652996913Z"}]},"request_id":"54679973-fd59-4a8d-a667-d55f7ed6528e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615963.6576028} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e692f1f18f74499c0431676abc0cfe27","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e692f1f18f74499c0431676abc0cfe27"} gateway-1 | {"time_local":"02/Aug/2024:16:26:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e692f1f18f74499c0431676abc0cfe27"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"e692f1f18f74499c0431676abc0cfe27","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0","level":"info","message":"auth send jwt","requestID":"4d479d688d73ce9239a2b65cea3d10d2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4d479d688d73ce9239a2b65cea3d10d2","responseTime":5,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0","level":"info","message":"auth send jwt","requestID":"dfc976d0fb1c3b2b116b484412a93bb0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"dfc976d0fb1c3b2b116b484412a93bb0","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4d479d688d73ce9239a2b65cea3d10d2"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"dfc976d0fb1c3b2b116b484412a93bb0"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.824266,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Received request.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"4d479d688d73ce9239a2b65cea3d10d2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615964,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4d479d688d73ce9239a2b65cea3d10d2","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Sent response.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.707326,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dfc976d0fb1c3b2b116b484412a93bb0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615964,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dfc976d0fb1c3b2b116b484412a93bb0","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6330407f-2ba5-4d74-af1d-e0044c3dffc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6330407f-2ba5-4d74-af1d-e0044c3dffc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:03.652996913Z"}]},"request_id":"101e7df2-68e1-4691-bcde-4fc6f6950cdd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.171272} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4d479d688d73ce9239a2b65cea3d10d2","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f913bdc-455d-4e7d-93be-253dc73e7206","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f913bdc-455d-4e7d-93be-253dc73e7206","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:03.602167902Z"}]},"request_id":"f4843fa3-cc20-4011-825d-1fc549144ed1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.1722863} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dfc976d0fb1c3b2b116b484412a93bb0","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"30fcc647-3b86-4096-9867-bee0a3a956cc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.177251} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4d479d688d73ce9239a2b65cea3d10d2","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c83e5d00-f189-4529-b029-b57ed17d2071","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.178445} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"dfc976d0fb1c3b2b116b484412a93bb0","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f913bdc-455d-4e7d-93be-253dc73e7206","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f913bdc-455d-4e7d-93be-253dc73e7206","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:03.602167902Z"}]},"request_id":"f56f4993-dc29-4974-b6ef-a04a1f6993a2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.182137} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dfc976d0fb1c3b2b116b484412a93bb0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"dfc976d0fb1c3b2b116b484412a93bb0"} device-1 | {"level":"info","message":"PATCH /devices/6f913bdc-455d-4e7d-93be-253dc73e7206 200 23ms","method":"PATCH","requestID":"dfc976d0fb1c3b2b116b484412a93bb0","responseTime":23,"status":200,"url":"/devices/6f913bdc-455d-4e7d-93be-253dc73e7206"} gateway-1 | {"time_local":"02/Aug/2024:16:26:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6f913bdc-455d-4e7d-93be-253dc73e7206 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.031","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"dfc976d0fb1c3b2b116b484412a93bb0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0","level":"info","message":"auth send jwt","requestID":"195816209d1d21ee35b12f16b427df4c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"195816209d1d21ee35b12f16b427df4c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"195816209d1d21ee35b12f16b427df4c"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6330407f-2ba5-4d74-af1d-e0044c3dffc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6330407f-2ba5-4d74-af1d-e0044c3dffc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:03.652996913Z"}]},"request_id":"4da2c0d8-0d9f-4cd3-abea-71cdba913eb1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.1925752} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4d479d688d73ce9239a2b65cea3d10d2","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.685926,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"195816209d1d21ee35b12f16b427df4c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615964,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4d479d688d73ce9239a2b65cea3d10d2"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"195816209d1d21ee35b12f16b427df4c","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:26:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"4d479d688d73ce9239a2b65cea3d10d2"} device-1 | {"level":"info","message":"PATCH /devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5 200 34ms","method":"PATCH","requestID":"4d479d688d73ce9239a2b65cea3d10d2","responseTime":34,"status":200,"url":"/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0","level":"info","message":"auth send jwt","requestID":"303c2433296e6161b39e5008e6c14307"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"303c2433296e6161b39e5008e6c14307","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"303c2433296e6161b39e5008e6c14307"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.896799,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"303c2433296e6161b39e5008e6c14307","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615964,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"303c2433296e6161b39e5008e6c14307","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"195816209d1d21ee35b12f16b427df4c"} gateway-1 | {"time_local":"02/Aug/2024:16:26:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6f913bdc-455d-4e7d-93be-253dc73e7206/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"195816209d1d21ee35b12f16b427df4c"} device-1 | {"level":"info","message":"POST /devices/6f913bdc-455d-4e7d-93be-253dc73e7206/websocket 200 16ms","method":"POST","requestID":"195816209d1d21ee35b12f16b427df4c","responseTime":16,"status":200,"url":"/devices/6f913bdc-455d-4e7d-93be-253dc73e7206/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"303c2433296e6161b39e5008e6c14307"} gateway-1 | {"time_local":"02/Aug/2024:16:26:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"303c2433296e6161b39e5008e6c14307"} device-1 | {"level":"info","message":"POST /devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5/websocket 200 16ms","method":"POST","requestID":"303c2433296e6161b39e5008e6c14307","responseTime":16,"status":200,"url":"/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0","level":"info","message":"auth send jwt","requestID":"8c8008af6ea9f6d642b8de071159ead7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8c8008af6ea9f6d642b8de071159ead7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8c8008af6ea9f6d642b8de071159ead7"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.157521,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"8c8008af6ea9f6d642b8de071159ead7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615964,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8c8008af6ea9f6d642b8de071159ead7","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f913bdc-455d-4e7d-93be-253dc73e7206","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f913bdc-455d-4e7d-93be-253dc73e7206","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:03.602167902Z"}]},"request_id":"dd56dceb-0cd6-47f4-b2ea-b3b2bd061804","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.2549045} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"8c8008af6ea9f6d642b8de071159ead7","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8c8008af6ea9f6d642b8de071159ead7"} device-1 | {"level":"info","message":"GET /devices/6f913bdc-455d-4e7d-93be-253dc73e7206? 200 12ms","method":"GET","requestID":"8c8008af6ea9f6d642b8de071159ead7","responseTime":12,"status":200,"url":"/devices/6f913bdc-455d-4e7d-93be-253dc73e7206?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6f913bdc-455d-4e7d-93be-253dc73e7206? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8c8008af6ea9f6d642b8de071159ead7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0","level":"info","message":"auth send jwt","requestID":"d4d0e8dbdaa48db9af393244ca92d62c"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d4d0e8dbdaa48db9af393244ca92d62c","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d4d0e8dbdaa48db9af393244ca92d62c"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.968572,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d4d0e8dbdaa48db9af393244ca92d62c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615964,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d4d0e8dbdaa48db9af393244ca92d62c","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6330407f-2ba5-4d74-af1d-e0044c3dffc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6330407f-2ba5-4d74-af1d-e0044c3dffc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:03.652996913Z"}]},"request_id":"53320a43-084d-49b7-81d6-e6d7ff25a0a5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.2718523} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d4d0e8dbdaa48db9af393244ca92d62c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d4d0e8dbdaa48db9af393244ca92d62c"} device-1 | {"level":"info","message":"GET /devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5? 200 11ms","method":"GET","requestID":"d4d0e8dbdaa48db9af393244ca92d62c","responseTime":11,"status":200,"url":"/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d4d0e8dbdaa48db9af393244ca92d62c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0","level":"info","message":"auth send jwt","requestID":"e79a99de4727bbff0172a5d06cfcec4a"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e79a99de4727bbff0172a5d06cfcec4a","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"e79a99de4727bbff0172a5d06cfcec4a"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.650548,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e79a99de4727bbff0172a5d06cfcec4a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615964,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"e79a99de4727bbff0172a5d06cfcec4a","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b9c5be1-f054-4a40-9ce9-aba797552532"},"level":"info","message":"Attempting to run experiment","requestID":"e79a99de4727bbff0172a5d06cfcec4a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b9c5be1-f054-4a40-9ce9-aba797552532"},"level":"info","message":"Attempting to book experiment","requestID":"e79a99de4727bbff0172a5d06cfcec4a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b9c5be1-f054-4a40-9ce9-aba797552532"},"level":"info","message":"Successfully booked experiment","requestID":"e79a99de4727bbff0172a5d06cfcec4a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e9e1a2f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e9e1ca00-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.618377,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Received request.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e9e1a2f0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615964,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e9e1a2f0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Sent response.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.585501,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e9e1ca00-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615964,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e9e1ca00-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f913bdc-455d-4e7d-93be-253dc73e7206","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f913bdc-455d-4e7d-93be-253dc73e7206","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:03.602167902Z"}]},"request_id":"6d0eb507-a5b3-4937-aafb-424963151154","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.3257768} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e9e1a2f0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6330407f-2ba5-4d74-af1d-e0044c3dffc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6330407f-2ba5-4d74-af1d-e0044c3dffc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:03.652996913Z"}]},"request_id":"e69fca22-f295-4935-9379-f8d59d8dc20d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.3263512} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e9e1ca00-50eb-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e9e1a2f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/6f913bdc-455d-4e7d-93be-253dc73e7206? 200 13ms","method":"GET","requestID":"e9e1a2f0-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/6f913bdc-455d-4e7d-93be-253dc73e7206?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e9e1ca00-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5? 200 13ms","method":"GET","requestID":"e9e1ca00-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b9c5be1-f054-4a40-9ce9-aba797552532"},"level":"info","message":"Setting up experiment","requestID":"e79a99de4727bbff0172a5d06cfcec4a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b9c5be1-f054-4a40-9ce9-aba797552532"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"e79a99de4727bbff0172a5d06cfcec4a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b9c5be1-f054-4a40-9ce9-aba797552532"},"level":"info","message":"Successfully locked booking for experiment","requestID":"e79a99de4727bbff0172a5d06cfcec4a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b9c5be1-f054-4a40-9ce9-aba797552532"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"e79a99de4727bbff0172a5d06cfcec4a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b9c5be1-f054-4a40-9ce9-aba797552532"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"e79a99de4727bbff0172a5d06cfcec4a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b9c5be1-f054-4a40-9ce9-aba797552532"},"level":"info","message":"Attempting to update booking for experiment","requestID":"e79a99de4727bbff0172a5d06cfcec4a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b9c5be1-f054-4a40-9ce9-aba797552532"},"level":"info","message":"Successfully updated booking for experiment","requestID":"e79a99de4727bbff0172a5d06cfcec4a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b9c5be1-f054-4a40-9ce9-aba797552532"},"level":"info","message":"Successfully set up experiment","requestID":"e79a99de4727bbff0172a5d06cfcec4a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e9eb66f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e9ebb510-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e9ebdc20-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":848,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":848,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.980476,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Received request.","req_id":849,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:04Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b9c5be1-f054-4a40-9ce9-aba797552532"},"level":"info","message":"Successfully running experiment","requestID":"e79a99de4727bbff0172a5d06cfcec4a"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e9eb66f0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615964,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e9eb66f0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Sent response.","req_id":849,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.156603,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e9ebb510-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615964,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e9ebb510-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":850,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f913bdc-455d-4e7d-93be-253dc73e7206","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"349573c5-20ec-4bce-87c9-b87f2cc7ea97","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.3939996} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":850,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.329245,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e9ebdc20-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206","object_type":"device","rebac_allow":false,"scope_allow":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":"e9ebdc20-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6330407f-2ba5-4d74-af1d-e0044c3dffc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6330407f-2ba5-4d74-af1d-e0044c3dffc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:03.652996913Z"}]},"request_id":"3dea6e77-c000-4f84-893d-ffc155e5fa73","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.396775} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"e9ebb510-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f913bdc-455d-4e7d-93be-253dc73e7206","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f913bdc-455d-4e7d-93be-253dc73e7206","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:03.602167902Z"}]},"request_id":"0aca448a-4df8-480d-93a6-2ae51b6b61c5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.4004726} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e9eb66f0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e9ebdc20-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/6f913bdc-455d-4e7d-93be-253dc73e7206/signaling 200 17ms","method":"POST","requestID":"e9ebdc20-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/6f913bdc-455d-4e7d-93be-253dc73e7206/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e9ef3780-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e9ebb510-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5? 200 25ms","method":"GET","requestID":"e9ebb510-50eb-11ef-8434-2f6d198c7397","responseTime":25,"status":200,"url":"/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e9eb66f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/6f913bdc-455d-4e7d-93be-253dc73e7206? 200 29ms","method":"GET","requestID":"e9eb66f0-50eb-11ef-8434-2f6d198c7397","responseTime":29,"status":200,"url":"/devices/6f913bdc-455d-4e7d-93be-253dc73e7206?"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4b9c5be1-f054-4a40-9ce9-aba797552532#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4b9c5be1-f054-4a40-9ce9-aba797552532","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"91598bdd-0f4c-4a50-b023-82b43eb1623a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.412007} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7b72f79b-acda-4241-b096-7d798e5488fd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.4122467} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":851,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:04Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e9f021e0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"e79a99de4727bbff0172a5d06cfcec4a","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6330407f-2ba5-4d74-af1d-e0044c3dffc5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5840d953-74e3-480d-9171-3a3a678f53b4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.4159722} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":851,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.946399,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e9ef3780-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5","object_type":"device","rebac_allow":false,"scope_allow":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":"e9ef3780-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Received request.","req_id":852,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f913bdc-455d-4e7d-93be-253dc73e7206","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"680edd47-8f54-4d96-abfe-d69c7d3e119e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.4213588} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Sent response.","req_id":852,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.121473,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e9f021e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206","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":"e9ef3780-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"e9f021e0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5/signaling 200 15ms","method":"POST","requestID":"e9ef3780-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/4b9c5be1-f054-4a40-9ce9-aba797552532","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"e79a99de4727bbff0172a5d06cfcec4a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e9f021e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/6f913bdc-455d-4e7d-93be-253dc73e7206/signaling 200 14ms","method":"POST","requestID":"e9f021e0-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/6f913bdc-455d-4e7d-93be-253dc73e7206/signaling"} gateway-1 | {"time_local":"02/Aug/2024:16:26:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1296","request_time":"0.152","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e79a99de4727bbff0172a5d06cfcec4a"} experiment-1 | {"level":"info","message":"POST /experiments? 201 147ms","method":"POST","requestID":"e79a99de4727bbff0172a5d06cfcec4a","responseTime":147,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e9f292e0-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0","level":"info","message":"auth send jwt","requestID":"9089b0e38f100d1c4b9d73b6b08a9bf9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9089b0e38f100d1c4b9d73b6b08a9bf9","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":853,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:04Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9089b0e38f100d1c4b9d73b6b08a9bf9"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6330407f-2ba5-4d74-af1d-e0044c3dffc5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b63c026b-3ff0-41ff-8ba9-502e2d6acf74","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.437168} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Received request.","req_id":854,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":853,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.642543,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e9f292e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5","object_type":"device","rebac_allow":false,"scope_allow":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":"e9f292e0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Sent response.","req_id":854,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.021978,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"9089b0e38f100d1c4b9d73b6b08a9bf9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615964,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9089b0e38f100d1c4b9d73b6b08a9bf9","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e9f292e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5/signaling 200 14ms","method":"POST","requestID":"e9f292e0-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b9c5be1-f054-4a40-9ce9-aba797552532"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"e79a99de4727bbff0172a5d06cfcec4a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f913bdc-455d-4e7d-93be-253dc73e7206","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f913bdc-455d-4e7d-93be-253dc73e7206","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:03.602167902Z"}]},"request_id":"5df9cdb1-920c-413b-8377-dd64a20a479a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.4451203} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9089b0e38f100d1c4b9d73b6b08a9bf9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e9f52af0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e9f57910-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":855,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:04Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9089b0e38f100d1c4b9d73b6b08a9bf9"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":855,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.117901,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Received request.","req_id":856,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e9f52af0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615964,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0"} device-1 | {"level":"info","message":"GET /devices/6f913bdc-455d-4e7d-93be-253dc73e7206? 200 18ms","method":"GET","requestID":"9089b0e38f100d1c4b9d73b6b08a9bf9","responseTime":18,"status":200,"url":"/devices/6f913bdc-455d-4e7d-93be-253dc73e7206?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6f913bdc-455d-4e7d-93be-253dc73e7206? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9089b0e38f100d1c4b9d73b6b08a9bf9"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e9f52af0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58314","level":"info","msg":"Sent response.","req_id":856,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.091647,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e9f57910-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615964,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e9f57910-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0","level":"info","message":"auth send jwt","requestID":"c5fd7df4657a27f0e0a76797d9823356"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c5fd7df4657a27f0e0a76797d9823356","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f913bdc-455d-4e7d-93be-253dc73e7206","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f913bdc-455d-4e7d-93be-253dc73e7206","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:03.602167902Z"}]},"request_id":"fb075b2b-4413-401d-a26c-5f2d8e192594","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.458239} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c5fd7df4657a27f0e0a76797d9823356"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e9f52af0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6330407f-2ba5-4d74-af1d-e0044c3dffc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6330407f-2ba5-4d74-af1d-e0044c3dffc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:03.652996913Z"}]},"request_id":"ddbb07ac-4c22-4d0f-aefd-bbe107ca9a8e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.4601123} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e9f57910-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":857,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:04Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e9f52af0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":857,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.96543,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:04Z"} device-1 | {"level":"info","message":"GET /devices/6f913bdc-455d-4e7d-93be-253dc73e7206? 200 18ms","method":"GET","requestID":"e9f52af0-50eb-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/6f913bdc-455d-4e7d-93be-253dc73e7206?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c5fd7df4657a27f0e0a76797d9823356","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615964,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e9f57910-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5? 200 16ms","method":"GET","requestID":"e9f57910-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5?"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c5fd7df4657a27f0e0a76797d9823356","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b9c5be1-f054-4a40-9ce9-aba797552532"},"level":"info","message":"Building connection plan","requestID":"e79a99de4727bbff0172a5d06cfcec4a"} 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":"440d9544-0995-46db-9ac3-3967a1a72aab"},{"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":"f8264a75-74c9-4187-98b2-63fa2265f1a8"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"5ed24a59-5a83-436d-bf8a-dd2b3393d415"}]},"level":"info","message":"Built pairwise service configurations","requestID":"e79a99de4727bbff0172a5d06cfcec4a"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"e79a99de4727bbff0172a5d06cfcec4a"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"e9f88650-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6330407f-2ba5-4d74-af1d-e0044c3dffc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6330407f-2ba5-4d74-af1d-e0044c3dffc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:03.652996913Z"}]},"request_id":"75cc25c8-b610-45b8-a7f3-57defd2895cc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.469829} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c5fd7df4657a27f0e0a76797d9823356","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":858,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:04Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c5fd7df4657a27f0e0a76797d9823356"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":858,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.056767,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:04Z"} gateway-1 | {"time_local":"02/Aug/2024:16:26:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c5fd7df4657a27f0e0a76797d9823356"} device-1 | {"level":"info","message":"GET /devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5? 200 15ms","method":"GET","requestID":"c5fd7df4657a27f0e0a76797d9823356","responseTime":15,"status":200,"url":"/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5?"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e9f88650-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615964,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2NH0.FuXJRvPTKietsRz4RXucQ-yvRf7SxFwwi9tF2yWZfm0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e9f88650-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"457f343f-c213-48de-8e1a-aebe4ca38025","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.4825163} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"92510d09-939e-42a7-9aa5-de3630e49ee6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.4827878} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"e9f88650-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"e9f88650-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"e9f88650-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/a8447b87-c539-455f-afb4-f82ea6ff05e0'","requestID":"e9f88650-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/a8447b87-c539-455f-afb4-f82ea6ff05e0'","requestID":"e9f88650-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"e9f88650-50eb-11ef-8434-2f6d198c7397"} 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":"e9f88650-50eb-11ef-8434-2f6d198c7397","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":"e9f88650-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b9c5be1-f054-4a40-9ce9-aba797552532"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"e79a99de4727bbff0172a5d06cfcec4a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ea0138e0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":859,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f913bdc-455d-4e7d-93be-253dc73e7206","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d0722eb7-367f-4b2c-a190-d96c81ee6a06","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.5312536} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":859,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.004296,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ea0138e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206","object_type":"device","rebac_allow":false,"scope_allow":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":"ea0138e0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ea0138e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/6f913bdc-455d-4e7d-93be-253dc73e7206/signaling 200 9ms","method":"POST","requestID":"ea0138e0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/6f913bdc-455d-4e7d-93be-253dc73e7206/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ea02e690-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":860,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6330407f-2ba5-4d74-af1d-e0044c3dffc5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"715f4180-fc33-4098-bf9c-7e9e585b3db4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615964.5431077} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":860,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.465718,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ea02e690-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5","object_type":"device","rebac_allow":false,"scope_allow":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":"ea02e690-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ea02e690-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5/signaling 200 10ms","method":"POST","requestID":"ea02e690-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5/signaling"} device-1 | {"device":"6f913bdc-455d-4e7d-93be-253dc73e7206","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"a8447b87-c539-455f-afb4-f82ea6ff05e0","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"6330407f-2ba5-4d74-af1d-e0044c3dffc5","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"a8447b87-c539-455f-afb4-f82ea6ff05e0","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"6330407f-2ba5-4d74-af1d-e0044c3dffc5","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6330407f-2ba5-4d74-af1d-e0044c3dffc5","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6330407f-2ba5-4d74-af1d-e0044c3dffc5","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6330407f-2ba5-4d74-af1d-e0044c3dffc5","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a8447b87-c539-455f-afb4-f82ea6ff05e0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a8447b87-c539-455f-afb4-f82ea6ff05e0","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ae1dfb156a4ca7b545fec590c9d40eda","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":"ae1dfb156a4ca7b545fec590c9d40eda","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/a8447b87-c539-455f-afb4-f82ea6ff05e0"}}},"level":"info","message":"received a callback","requestID":"ae1dfb156a4ca7b545fec590c9d40eda"} device-1 | {"device":"6f913bdc-455d-4e7d-93be-253dc73e7206","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6f913bdc-455d-4e7d-93be-253dc73e7206","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6f913bdc-455d-4e7d-93be-253dc73e7206","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} gateway-1 | {"time_local":"02/Aug/2024:16:26: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.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"ae1dfb156a4ca7b545fec590c9d40eda"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"ae1dfb156a4ca7b545fec590c9d40eda","responseTime":9,"status":200,"url":"/callbacks/experiment"} device-1 | {"data":{"peerconnection":"a8447b87-c539-455f-afb4-f82ea6ff05e0","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"6330407f-2ba5-4d74-af1d-e0044c3dffc5","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6f913bdc-455d-4e7d-93be-253dc73e7206","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6330407f-2ba5-4d74-af1d-e0044c3dffc5","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6f913bdc-455d-4e7d-93be-253dc73e7206","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"a8447b87-c539-455f-afb4-f82ea6ff05e0","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/a8447b87-c539-455f-afb4-f82ea6ff05e0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a8447b87-c539-455f-afb4-f82ea6ff05e0","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a4879dfdd48d6bc1406d0b32fb1cee89","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":"a4879dfdd48d6bc1406d0b32fb1cee89","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/a8447b87-c539-455f-afb4-f82ea6ff05e0"}}},"level":"info","message":"received a callback","requestID":"a4879dfdd48d6bc1406d0b32fb1cee89"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"eb3ec1f0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":861,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:06Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa8447b87-c539-455f-afb4-f82ea6ff05e0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"db061d7c-aaa4-4051-a2e4-51f895ec44e0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615966.6150854} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":861,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":6.518924,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a8447b87-c539-455f-afb4-f82ea6ff05e0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"eb3ec1f0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/a8447b87-c539-455f-afb4-f82ea6ff05e0","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 15ms","method":"POST","requestID":"eb3ec1f0-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"eb3ec1f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/a8447b87-c539-455f-afb4-f82ea6ff05e0 200 20ms","method":"GET","requestID":"eb3ec1f0-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/peerconnections/a8447b87-c539-455f-afb4-f82ea6ff05e0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 48ms","method":"POST","requestID":"a4879dfdd48d6bc1406d0b32fb1cee89","responseTime":48,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26: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.052","http_referrer":"","http_user_agent":"node-fetch","requestID":"a4879dfdd48d6bc1406d0b32fb1cee89"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eb44dc70-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":862,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:06Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6330407f-2ba5-4d74-af1d-e0044c3dffc5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4f14b5d2-0479-4eb9-bbb0-a6586df1040d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615966.6542616} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":862,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.614329,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"eb44dc70-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5","object_type":"device","rebac_allow":false,"scope_allow":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":"eb44dc70-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eb44dc70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5/signaling 200 12ms","method":"POST","requestID":"eb44dc70-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eb472660-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":863,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:06Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f913bdc-455d-4e7d-93be-253dc73e7206","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0e818011-25ca-41fe-bd1e-019d329c27e0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615966.66754} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":863,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.191998,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"eb472660-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206","object_type":"device","rebac_allow":false,"scope_allow":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":"eb472660-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eb472660-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/6f913bdc-455d-4e7d-93be-253dc73e7206/signaling 200 10ms","method":"POST","requestID":"eb472660-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/6f913bdc-455d-4e7d-93be-253dc73e7206/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2Nn0.-jfYZB2Q9aSB2BReYde5lVrS1XXUiYV6sH6dhC9uSSg","level":"info","message":"auth send jwt","requestID":"102d3b6420422ea4620acf0b34d96d36"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"102d3b6420422ea4620acf0b34d96d36","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/4b9c5be1-f054-4a40-9ce9-aba797552532","requestID":"102d3b6420422ea4620acf0b34d96d36"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":864,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":864,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.338438,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4b9c5be1-f054-4a40-9ce9-aba797552532","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"102d3b6420422ea4620acf0b34d96d36","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/4b9c5be1-f054-4a40-9ce9-aba797552532","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615966,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2Nn0.-jfYZB2Q9aSB2BReYde5lVrS1XXUiYV6sH6dhC9uSSg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"102d3b6420422ea4620acf0b34d96d36","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/4b9c5be1-f054-4a40-9ce9-aba797552532","requestID":"102d3b6420422ea4620acf0b34d96d36"} gateway-1 | {"time_local":"02/Aug/2024:16:26:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/4b9c5be1-f054-4a40-9ce9-aba797552532 HTTP/1.1","status": "200","body_bytes_sent":"1369","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"102d3b6420422ea4620acf0b34d96d36"} experiment-1 | {"level":"info","message":"GET /experiments/4b9c5be1-f054-4a40-9ce9-aba797552532 200 15ms","method":"GET","requestID":"102d3b6420422ea4620acf0b34d96d36","responseTime":15,"status":200,"url":"/experiments/4b9c5be1-f054-4a40-9ce9-aba797552532"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2Nn0.-jfYZB2Q9aSB2BReYde5lVrS1XXUiYV6sH6dhC9uSSg","level":"info","message":"auth send jwt","requestID":"4d4192a656d022a46921d27df69a5cd1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4d4192a656d022a46921d27df69a5cd1","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/4b9c5be1-f054-4a40-9ce9-aba797552532","requestID":"4d4192a656d022a46921d27df69a5cd1"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":865,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":865,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.226423,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:06Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4b9c5be1-f054-4a40-9ce9-aba797552532","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"4d4192a656d022a46921d27df69a5cd1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/4b9c5be1-f054-4a40-9ce9-aba797552532","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615966,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2Nn0.-jfYZB2Q9aSB2BReYde5lVrS1XXUiYV6sH6dhC9uSSg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4d4192a656d022a46921d27df69a5cd1","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b9c5be1-f054-4a40-9ce9-aba797552532"},"level":"info","message":"Attempting to finish experiment","requestID":"4d4192a656d022a46921d27df69a5cd1"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"eb527100-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":866,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":866,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.413242,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:06Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a8447b87-c539-455f-afb4-f82ea6ff05e0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"eb527100-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/a8447b87-c539-455f-afb4-f82ea6ff05e0","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615966,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2Nn0.-jfYZB2Q9aSB2BReYde5lVrS1XXUiYV6sH6dhC9uSSg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"eb527100-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"6f913bdc-455d-4e7d-93be-253dc73e7206","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6f913bdc-455d-4e7d-93be-253dc73e7206","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6f913bdc-455d-4e7d-93be-253dc73e7206","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6330407f-2ba5-4d74-af1d-e0044c3dffc5","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6330407f-2ba5-4d74-af1d-e0044c3dffc5","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"6330407f-2ba5-4d74-af1d-e0044c3dffc5","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a8447b87-c539-455f-afb4-f82ea6ff05e0' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/a8447b87-c539-455f-afb4-f82ea6ff05e0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a8447b87-c539-455f-afb4-f82ea6ff05e0","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b5d7168284b4e8e1e754f67839a3000b","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":"b5d7168284b4e8e1e754f67839a3000b","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"286c83944c5c334222759a0bb3396c56","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":"286c83944c5c334222759a0bb3396c56","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a8447b87-c539-455f-afb4-f82ea6ff05e0"}}},"level":"info","message":"received a callback","requestID":"b5d7168284b4e8e1e754f67839a3000b"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa8447b87-c539-455f-afb4-f82ea6ff05e0': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa8447b87-c539-455f-afb4-f82ea6ff05e0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"92a42816-b4fa-4a72-8418-077667e0c8be","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615966.766876} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a8447b87-c539-455f-afb4-f82ea6ff05e0"}}},"level":"info","message":"received a callback","requestID":"286c83944c5c334222759a0bb3396c56"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"75ed16ba-d6aa-4b01-929d-f297fd946d41","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615966.767623} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"eb527100-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"a8447b87-c539-455f-afb4-f82ea6ff05e0","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"eb527100-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/a8447b87-c539-455f-afb4-f82ea6ff05e0 204 49ms","method":"DELETE","requestID":"eb527100-50eb-11ef-8434-2f6d198c7397","responseTime":49,"status":204,"url":"/peerconnections/a8447b87-c539-455f-afb4-f82ea6ff05e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b9c5be1-f054-4a40-9ce9-aba797552532"},"level":"info","message":"Successfully finished experiment","requestID":"4d4192a656d022a46921d27df69a5cd1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eb5dbba0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":867,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:06Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6330407f-2ba5-4d74-af1d-e0044c3dffc5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e39df82e-7e6c-4928-ae1e-98ee408cab72","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615966.818398} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":867,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.370834,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"eb5dbba0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5","object_type":"device","rebac_allow":false,"scope_allow":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":"eb5dbba0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eb5dbba0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5/signaling 200 15ms","method":"POST","requestID":"eb5dbba0-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/6330407f-2ba5-4d74-af1d-e0044c3dffc5/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4b9c5be1-f054-4a40-9ce9-aba797552532': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4b9c5be1-f054-4a40-9ce9-aba797552532","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"a1bbee06-1377-4395-a2b0-19b39e8f6880","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615966.8272035} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eb607ac0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0d210351-0a9d-4d24-8c0a-272e5494f423","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615966.827834} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"4d4192a656d022a46921d27df69a5cd1","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":868,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:06Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6f913bdc-455d-4e7d-93be-253dc73e7206","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0f783394-c350-4f00-9889-a475f0523b75","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615966.8358333} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":868,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.863257,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"eb607ac0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6f913bdc-455d-4e7d-93be-253dc73e7206","object_type":"device","rebac_allow":false,"scope_allow":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":"eb607ac0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eb607ac0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/6f913bdc-455d-4e7d-93be-253dc73e7206/signaling 200 14ms","method":"POST","requestID":"eb607ac0-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/6f913bdc-455d-4e7d-93be-253dc73e7206/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/4b9c5be1-f054-4a40-9ce9-aba797552532","requestID":"4d4192a656d022a46921d27df69a5cd1"} gateway-1 | {"time_local":"02/Aug/2024:16:26:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/4b9c5be1-f054-4a40-9ce9-aba797552532 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":"4d4192a656d022a46921d27df69a5cd1"} gateway-1 | {"time_local":"02/Aug/2024:16:26:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3130","request_time":"2.678","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"2b62fc11dbc338f9ce86f46931649cfb"} gateway-1 | {"time_local":"02/Aug/2024:16:26:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3132","request_time":"2.689","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"4bf0a0be880bbf1df4b5deda502a2fcb"} experiment-1 | {"level":"info","message":"DELETE /experiments/4b9c5be1-f054-4a40-9ce9-aba797552532 204 177ms","method":"DELETE","requestID":"4d4192a656d022a46921d27df69a5cd1","responseTime":177,"status":204,"url":"/experiments/4b9c5be1-f054-4a40-9ce9-aba797552532"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 135ms","method":"POST","requestID":"b5d7168284b4e8e1e754f67839a3000b","responseTime":135,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26: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.140","http_referrer":"","http_user_agent":"node-fetch","requestID":"b5d7168284b4e8e1e754f67839a3000b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"286c83944c5c334222759a0bb3396c56","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26: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.139","http_referrer":"","http_user_agent":"node-fetch","requestID":"286c83944c5c334222759a0bb3396c56"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2Nn0.-jfYZB2Q9aSB2BReYde5lVrS1XXUiYV6sH6dhC9uSSg","level":"info","message":"auth send jwt","requestID":"f9267d5aff8f3e391a6191b29048b144"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f9267d5aff8f3e391a6191b29048b144","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/6f913bdc-455d-4e7d-93be-253dc73e7206' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"f9267d5aff8f3e391a6191b29048b144"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":869,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":869,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.865071,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f9267d5aff8f3e391a6191b29048b144","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615966,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2Nn0.-jfYZB2Q9aSB2BReYde5lVrS1XXUiYV6sH6dhC9uSSg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f9267d5aff8f3e391a6191b29048b144","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/6330407f-2ba5-4d74-af1d-e0044c3dffc5' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70e9740c-5243-41f1-8ec2-4520f3020627","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7c2f9243-ae00-4018-b5c2-96ab68e06081","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615966.9230063} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f9267d5aff8f3e391a6191b29048b144","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a5d2a8b6-997e-4725-9a5e-062acdb4b659","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615966.9290564} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f9267d5aff8f3e391a6191b29048b144","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70e9740c-5243-41f1-8ec2-4520f3020627","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"126462ef-acb6-45d5-be7b-66f5035eabce","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615966.9400847} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9b288ffb-44b9-46f5-9cc1-e512e171426d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615966.9403152} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"f9267d5aff8f3e391a6191b29048b144","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70e9740c-5243-41f1-8ec2-4520f3020627","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70e9740c-5243-41f1-8ec2-4520f3020627","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:06.940037669Z"}]},"request_id":"9ac92eea-38f2-4275-99f2-125deae7b794","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615966.9446652} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f9267d5aff8f3e391a6191b29048b144","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f9267d5aff8f3e391a6191b29048b144"} gateway-1 | {"time_local":"02/Aug/2024:16:26:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f9267d5aff8f3e391a6191b29048b144"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"f9267d5aff8f3e391a6191b29048b144","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2Nn0.-jfYZB2Q9aSB2BReYde5lVrS1XXUiYV6sH6dhC9uSSg","level":"info","message":"auth send jwt","requestID":"db76f893a1ae531953479da200feebc4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"db76f893a1ae531953479da200feebc4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"db76f893a1ae531953479da200feebc4"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":870,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":870,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.789212,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db76f893a1ae531953479da200feebc4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615966,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2Nn0.-jfYZB2Q9aSB2BReYde5lVrS1XXUiYV6sH6dhC9uSSg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"db76f893a1ae531953479da200feebc4","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d723691-e647-412c-b824-5f94171928b9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"97d469e6-bf63-4b82-9c8f-35c12d759222","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615966.967321} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"db76f893a1ae531953479da200feebc4","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ba1dab90-ee91-44fd-ad66-15dd4e148d2c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615966.97222} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"db76f893a1ae531953479da200feebc4","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d723691-e647-412c-b824-5f94171928b9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"6f704621-2bb6-435d-bc95-e0a4962d5b6f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615966.988697} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4e90d6f4-7e0d-4a28-843d-c15feb6a2279","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615966.9889941} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"db76f893a1ae531953479da200feebc4","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d723691-e647-412c-b824-5f94171928b9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d723691-e647-412c-b824-5f94171928b9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:06.988669546Z"}]},"request_id":"8ccf15e0-fe87-4bc4-b46f-d283981c9207","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615966.993191} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"db76f893a1ae531953479da200feebc4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"db76f893a1ae531953479da200feebc4"} gateway-1 | {"time_local":"02/Aug/2024:16:26:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"db76f893a1ae531953479da200feebc4"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"db76f893a1ae531953479da200feebc4","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"70e21aa7e76fd623fc6b35d993d93c7b","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":"70e21aa7e76fd623fc6b35d993d93c7b","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5d723691-e647-412c-b824-5f94171928b9/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":"70e21aa7e76fd623fc6b35d993d93c7b"} device-1 | {"level":"info","message":"OPTIONS /devices/5d723691-e647-412c-b824-5f94171928b9/websocket 200 1ms","method":"OPTIONS","requestID":"70e21aa7e76fd623fc6b35d993d93c7b","responseTime":1,"status":200,"url":"/devices/5d723691-e647-412c-b824-5f94171928b9/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OH0.KpnuVUjcIWJHHgYgF2nf6A1NlkVUvA1dvxWCoBHtfH8","level":"info","message":"auth send jwt","requestID":"17b565f1e125dbde5cd14671d1c6c0be"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"17b565f1e125dbde5cd14671d1c6c0be","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"17b565f1e125dbde5cd14671d1c6c0be"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":871,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:08Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"655f13c111601eab77c5bed2c95635b1","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":"655f13c111601eab77c5bed2c95635b1","responseTime":0,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":871,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.685587,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:08Z"} gateway-1 | {"time_local":"02/Aug/2024:16:26:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/70e9740c-5243-41f1-8ec2-4520f3020627/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":"655f13c111601eab77c5bed2c95635b1"} device-1 | {"level":"info","message":"OPTIONS /devices/70e9740c-5243-41f1-8ec2-4520f3020627/websocket 200 1ms","method":"OPTIONS","requestID":"655f13c111601eab77c5bed2c95635b1","responseTime":1,"status":200,"url":"/devices/70e9740c-5243-41f1-8ec2-4520f3020627/websocket"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"17b565f1e125dbde5cd14671d1c6c0be","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615968,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OH0.KpnuVUjcIWJHHgYgF2nf6A1NlkVUvA1dvxWCoBHtfH8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"17b565f1e125dbde5cd14671d1c6c0be","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU","level":"info","message":"auth send jwt","requestID":"f10033de9353be2aa972249648b51738"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"f10033de9353be2aa972249648b51738","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f10033de9353be2aa972249648b51738"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":872,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":872,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.200657,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"17b565f1e125dbde5cd14671d1c6c0be"} gateway-1 | {"time_local":"02/Aug/2024:16:26:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5d723691-e647-412c-b824-5f94171928b9/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":"17b565f1e125dbde5cd14671d1c6c0be"} device-1 | {"level":"info","message":"POST /devices/5d723691-e647-412c-b824-5f94171928b9/websocket 200 23ms","method":"POST","requestID":"17b565f1e125dbde5cd14671d1c6c0be","responseTime":23,"status":200,"url":"/devices/5d723691-e647-412c-b824-5f94171928b9/websocket"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f10033de9353be2aa972249648b51738","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615969,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f10033de9353be2aa972249648b51738","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f10033de9353be2aa972249648b51738"} gateway-1 | {"time_local":"02/Aug/2024:16:26:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/70e9740c-5243-41f1-8ec2-4520f3020627/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":"f10033de9353be2aa972249648b51738"} device-1 | {"level":"info","message":"POST /devices/70e9740c-5243-41f1-8ec2-4520f3020627/websocket 200 20ms","method":"POST","requestID":"f10033de9353be2aa972249648b51738","responseTime":20,"status":200,"url":"/devices/70e9740c-5243-41f1-8ec2-4520f3020627/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d58b9a94884d091e06ca70756492f92d","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":"d58b9a94884d091e06ca70756492f92d","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5d723691-e647-412c-b824-5f94171928b9? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"d58b9a94884d091e06ca70756492f92d"} device-1 | {"level":"info","message":"OPTIONS /devices/5d723691-e647-412c-b824-5f94171928b9? 200 1ms","method":"OPTIONS","requestID":"d58b9a94884d091e06ca70756492f92d","responseTime":1,"status":200,"url":"/devices/5d723691-e647-412c-b824-5f94171928b9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU","level":"info","message":"auth send jwt","requestID":"e70e3caa20945fc1ebc8f08234523b71"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e70e3caa20945fc1ebc8f08234523b71","responseTime":5,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3a16dbc6d380e49d76905efb99500b24","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)"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e70e3caa20945fc1ebc8f08234523b71"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3a16dbc6d380e49d76905efb99500b24","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/70e9740c-5243-41f1-8ec2-4520f3020627? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"3a16dbc6d380e49d76905efb99500b24"} device-1 | {"level":"info","message":"OPTIONS /devices/70e9740c-5243-41f1-8ec2-4520f3020627? 200 1ms","method":"OPTIONS","requestID":"3a16dbc6d380e49d76905efb99500b24","responseTime":1,"status":200,"url":"/devices/70e9740c-5243-41f1-8ec2-4520f3020627?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":873,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":873,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.90836,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e70e3caa20945fc1ebc8f08234523b71","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615969,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e70e3caa20945fc1ebc8f08234523b71","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU","level":"info","message":"auth send jwt","requestID":"39e33ce54fb690fc5a415e3614b5b7c0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"39e33ce54fb690fc5a415e3614b5b7c0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"39e33ce54fb690fc5a415e3614b5b7c0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d723691-e647-412c-b824-5f94171928b9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d723691-e647-412c-b824-5f94171928b9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:06.988669546Z"}]},"request_id":"85693256-7142-44b0-bde3-0510bd5dc4fa","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.0736923} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e70e3caa20945fc1ebc8f08234523b71","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":874,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":874,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.866465,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"39e33ce54fb690fc5a415e3614b5b7c0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615969,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"39e33ce54fb690fc5a415e3614b5b7c0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2fadf5d7-5812-4d6b-b981-a4884bdebd4d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.0802844} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e70e3caa20945fc1ebc8f08234523b71","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70e9740c-5243-41f1-8ec2-4520f3020627","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70e9740c-5243-41f1-8ec2-4520f3020627","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:06.940037669Z"}]},"request_id":"4c12b757-f844-447e-82a3-26e9f9dc4ed7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.0839148} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"39e33ce54fb690fc5a415e3614b5b7c0","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5ecef737-b7c1-43e6-895e-12eb5be90361","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.0896423} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"39e33ce54fb690fc5a415e3614b5b7c0","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d723691-e647-412c-b824-5f94171928b9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d723691-e647-412c-b824-5f94171928b9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:06.988669546Z"}]},"request_id":"5c9118e9-f758-4101-8494-0194f44b2ce5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.097693} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e70e3caa20945fc1ebc8f08234523b71","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e70e3caa20945fc1ebc8f08234523b71"} device-1 | {"level":"info","message":"PATCH /devices/5d723691-e647-412c-b824-5f94171928b9? 200 36ms","method":"PATCH","requestID":"e70e3caa20945fc1ebc8f08234523b71","responseTime":36,"status":200,"url":"/devices/5d723691-e647-412c-b824-5f94171928b9?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/5d723691-e647-412c-b824-5f94171928b9? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.043","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":"e70e3caa20945fc1ebc8f08234523b71"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70e9740c-5243-41f1-8ec2-4520f3020627","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70e9740c-5243-41f1-8ec2-4520f3020627","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:06.940037669Z"}]},"request_id":"b91bd168-b7a0-4dea-9ea7-2755392e913b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.1078176} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"39e33ce54fb690fc5a415e3614b5b7c0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"39e33ce54fb690fc5a415e3614b5b7c0"} gateway-1 | {"time_local":"02/Aug/2024:16:26:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/70e9740c-5243-41f1-8ec2-4520f3020627? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.043","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":"39e33ce54fb690fc5a415e3614b5b7c0"} device-1 | {"level":"info","message":"PATCH /devices/70e9740c-5243-41f1-8ec2-4520f3020627? 200 38ms","method":"PATCH","requestID":"39e33ce54fb690fc5a415e3614b5b7c0","responseTime":38,"status":200,"url":"/devices/70e9740c-5243-41f1-8ec2-4520f3020627?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU","level":"info","message":"auth send jwt","requestID":"a88280d70f3885d0cf52512f81bc37a8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a88280d70f3885d0cf52512f81bc37a8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a88280d70f3885d0cf52512f81bc37a8"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":875,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":875,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.884984,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a88280d70f3885d0cf52512f81bc37a8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615969,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a88280d70f3885d0cf52512f81bc37a8","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70e9740c-5243-41f1-8ec2-4520f3020627","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70e9740c-5243-41f1-8ec2-4520f3020627","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:06.940037669Z"}]},"request_id":"0921be4e-d441-4955-b6e9-e5007c8b88fd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.1298769} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a88280d70f3885d0cf52512f81bc37a8","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a88280d70f3885d0cf52512f81bc37a8"} gateway-1 | {"time_local":"02/Aug/2024:16:26:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/70e9740c-5243-41f1-8ec2-4520f3020627? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a88280d70f3885d0cf52512f81bc37a8"} device-1 | {"level":"info","message":"GET /devices/70e9740c-5243-41f1-8ec2-4520f3020627? 200 11ms","method":"GET","requestID":"a88280d70f3885d0cf52512f81bc37a8","responseTime":11,"status":200,"url":"/devices/70e9740c-5243-41f1-8ec2-4520f3020627?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU","level":"info","message":"auth send jwt","requestID":"d60ab761e9578018e85ab071742da305"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d60ab761e9578018e85ab071742da305","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d60ab761e9578018e85ab071742da305"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":876,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":876,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.667484,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d60ab761e9578018e85ab071742da305","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615969,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d60ab761e9578018e85ab071742da305","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d723691-e647-412c-b824-5f94171928b9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d723691-e647-412c-b824-5f94171928b9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:06.988669546Z"}]},"request_id":"9d108925-cffc-45ab-a164-32d8ee7d1977","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.1477363} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d60ab761e9578018e85ab071742da305","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d60ab761e9578018e85ab071742da305"} gateway-1 | {"time_local":"02/Aug/2024:16:26:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5d723691-e647-412c-b824-5f94171928b9? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d60ab761e9578018e85ab071742da305"} device-1 | {"level":"info","message":"GET /devices/5d723691-e647-412c-b824-5f94171928b9? 200 11ms","method":"GET","requestID":"d60ab761e9578018e85ab071742da305","responseTime":11,"status":200,"url":"/devices/5d723691-e647-412c-b824-5f94171928b9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU","level":"info","message":"auth send jwt","requestID":"51c5d4e8396360d3a6188351f20127fd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"51c5d4e8396360d3a6188351f20127fd","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"51c5d4e8396360d3a6188351f20127fd"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":877,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":877,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.998478,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"51c5d4e8396360d3a6188351f20127fd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615969,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"51c5d4e8396360d3a6188351f20127fd","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b2364b9-5fbe-410c-8358-ca8218583742"},"level":"info","message":"Attempting to run experiment","requestID":"51c5d4e8396360d3a6188351f20127fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b2364b9-5fbe-410c-8358-ca8218583742"},"level":"info","message":"Attempting to book experiment","requestID":"51c5d4e8396360d3a6188351f20127fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b2364b9-5fbe-410c-8358-ca8218583742"},"level":"info","message":"Successfully booked experiment","requestID":"51c5d4e8396360d3a6188351f20127fd"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ecc8bd50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ecc90b70-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":878,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":878,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.802188,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ecc8bd50-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615969,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ecc8bd50-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":879,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":879,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.498881,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ecc90b70-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615969,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ecc90b70-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70e9740c-5243-41f1-8ec2-4520f3020627","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70e9740c-5243-41f1-8ec2-4520f3020627","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:06.940037669Z"}]},"request_id":"13658b1f-eece-4f54-ab53-684ade0e475a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.198988} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ecc8bd50-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d723691-e647-412c-b824-5f94171928b9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d723691-e647-412c-b824-5f94171928b9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:06.988669546Z"}]},"request_id":"eb3c5c57-542b-4948-b110-4c6b1a6fbbdc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.2028234} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ecc8bd50-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ecc90b70-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/70e9740c-5243-41f1-8ec2-4520f3020627? 200 15ms","method":"GET","requestID":"ecc8bd50-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/70e9740c-5243-41f1-8ec2-4520f3020627?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ecc90b70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/5d723691-e647-412c-b824-5f94171928b9? 200 16ms","method":"GET","requestID":"ecc90b70-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/5d723691-e647-412c-b824-5f94171928b9?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b2364b9-5fbe-410c-8358-ca8218583742"},"level":"info","message":"Setting up experiment","requestID":"51c5d4e8396360d3a6188351f20127fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b2364b9-5fbe-410c-8358-ca8218583742"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"51c5d4e8396360d3a6188351f20127fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b2364b9-5fbe-410c-8358-ca8218583742"},"level":"info","message":"Successfully locked booking for experiment","requestID":"51c5d4e8396360d3a6188351f20127fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b2364b9-5fbe-410c-8358-ca8218583742"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"51c5d4e8396360d3a6188351f20127fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b2364b9-5fbe-410c-8358-ca8218583742"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"51c5d4e8396360d3a6188351f20127fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b2364b9-5fbe-410c-8358-ca8218583742"},"level":"info","message":"Attempting to update booking for experiment","requestID":"51c5d4e8396360d3a6188351f20127fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b2364b9-5fbe-410c-8358-ca8218583742"},"level":"info","message":"Successfully updated booking for experiment","requestID":"51c5d4e8396360d3a6188351f20127fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b2364b9-5fbe-410c-8358-ca8218583742"},"level":"info","message":"Successfully set up experiment","requestID":"51c5d4e8396360d3a6188351f20127fd"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ecd20c20-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ecd25a40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ecd28150-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":880,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b2364b9-5fbe-410c-8358-ca8218583742"},"level":"info","message":"Successfully running experiment","requestID":"51c5d4e8396360d3a6188351f20127fd"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":880,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.038726,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":881,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ecd20c20-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615969,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"ecd20c20-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":881,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.158464,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ecd25a40-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615969,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"ecd25a40-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34360","level":"info","msg":"Received request.","req_id":882,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d723691-e647-412c-b824-5f94171928b9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d723691-e647-412c-b824-5f94171928b9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:06.988669546Z"}]},"request_id":"b5679390-850e-46db-9e6b-4270d0c42436","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.2668316} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70e9740c-5243-41f1-8ec2-4520f3020627","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a557a740-2ff0-486d-b7dc-0b968ca6f59e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.266966} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ecd25a40-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:34360","level":"info","msg":"Sent response.","req_id":882,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.292212,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70e9740c-5243-41f1-8ec2-4520f3020627","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70e9740c-5243-41f1-8ec2-4520f3020627","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:06.940037669Z"}]},"request_id":"268d3d15-849a-4cf7-bdba-5f04df971d45","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.268296} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ecd28150-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627","object_type":"device","rebac_allow":false,"scope_allow":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":"ecd28150-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ecd20c20-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ecd25a40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/5d723691-e647-412c-b824-5f94171928b9? 200 25ms","method":"GET","requestID":"ecd25a40-50eb-11ef-8434-2f6d198c7397","responseTime":25,"status":200,"url":"/devices/5d723691-e647-412c-b824-5f94171928b9?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ecd28150-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/70e9740c-5243-41f1-8ec2-4520f3020627/signaling 200 25ms","method":"POST","requestID":"ecd28150-50eb-11ef-8434-2f6d198c7397","responseTime":25,"status":200,"url":"/devices/70e9740c-5243-41f1-8ec2-4520f3020627/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7b2364b9-5fbe-410c-8358-ca8218583742#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7b2364b9-5fbe-410c-8358-ca8218583742","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"d0aa540c-0200-495d-a124-891fd329f8f6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.2803633} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bf99768a-6f34-4054-a8ea-192d62a37a84","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.2808099} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ecd20c20-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"51c5d4e8396360d3a6188351f20127fd","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/70e9740c-5243-41f1-8ec2-4520f3020627? 200 33ms","method":"GET","requestID":"ecd20c20-50eb-11ef-8434-2f6d198c7397","responseTime":33,"status":200,"url":"/devices/70e9740c-5243-41f1-8ec2-4520f3020627?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ecd73c40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ecd78a60-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":883,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":884,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d723691-e647-412c-b824-5f94171928b9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2c93bf3e-2971-42ab-89a2-9fb9600ebd7a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.2906206} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":883,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.365884,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ecd73c40-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9","object_type":"device","rebac_allow":false,"scope_allow":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":"ecd73c40-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/7b2364b9-5fbe-410c-8358-ca8218583742","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"51c5d4e8396360d3a6188351f20127fd"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70e9740c-5243-41f1-8ec2-4520f3020627","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"67d0c350-cbf1-465e-b26a-41089d7f8ca5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.2933836} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":884,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.798476,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} gateway-1 | {"time_local":"02/Aug/2024:16:26:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1288","request_time":"0.142","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"51c5d4e8396360d3a6188351f20127fd"} experiment-1 | {"level":"info","message":"POST /experiments? 201 137ms","method":"POST","requestID":"51c5d4e8396360d3a6188351f20127fd","responseTime":137,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ecd78a60-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627","object_type":"device","rebac_allow":false,"scope_allow":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":"ecd78a60-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ecd73c40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/5d723691-e647-412c-b824-5f94171928b9/signaling 200 15ms","method":"POST","requestID":"ecd73c40-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/5d723691-e647-412c-b824-5f94171928b9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU","level":"info","message":"auth send jwt","requestID":"0ec6c6c6b5bd74ad3d5c81b353d3871d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ecd78a60-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0ec6c6c6b5bd74ad3d5c81b353d3871d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/70e9740c-5243-41f1-8ec2-4520f3020627/signaling 200 16ms","method":"POST","requestID":"ecd78a60-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/70e9740c-5243-41f1-8ec2-4520f3020627/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0ec6c6c6b5bd74ad3d5c81b353d3871d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ecda4980-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":885,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":885,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.925346,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0ec6c6c6b5bd74ad3d5c81b353d3871d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615969,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0ec6c6c6b5bd74ad3d5c81b353d3871d","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":886,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d723691-e647-412c-b824-5f94171928b9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a4faef72-e25f-4c59-b75b-616e22f68660","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.3101864} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":886,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.014685,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ecda4980-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9","object_type":"device","rebac_allow":false,"scope_allow":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":"ecda4980-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70e9740c-5243-41f1-8ec2-4520f3020627","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70e9740c-5243-41f1-8ec2-4520f3020627","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:06.940037669Z"}]},"request_id":"bec611bc-17a6-49a8-96d5-1836a7d0a562","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.3128672} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0ec6c6c6b5bd74ad3d5c81b353d3871d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ecda4980-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/5d723691-e647-412c-b824-5f94171928b9/signaling 200 14ms","method":"POST","requestID":"ecda4980-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/5d723691-e647-412c-b824-5f94171928b9/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0ec6c6c6b5bd74ad3d5c81b353d3871d"} gateway-1 | {"time_local":"02/Aug/2024:16:26:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/70e9740c-5243-41f1-8ec2-4520f3020627? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0ec6c6c6b5bd74ad3d5c81b353d3871d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b2364b9-5fbe-410c-8358-ca8218583742"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"51c5d4e8396360d3a6188351f20127fd"} device-1 | {"level":"info","message":"GET /devices/70e9740c-5243-41f1-8ec2-4520f3020627? 200 18ms","method":"GET","requestID":"0ec6c6c6b5bd74ad3d5c81b353d3871d","responseTime":18,"status":200,"url":"/devices/70e9740c-5243-41f1-8ec2-4520f3020627?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ecdce190-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ecdd08a0-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU","level":"info","message":"auth send jwt","requestID":"1faa4b131947cece1e0ddc6b25e48abd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1faa4b131947cece1e0ddc6b25e48abd","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":887,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":887,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.828207,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":888,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1faa4b131947cece1e0ddc6b25e48abd"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ecdce190-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615969,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ecdce190-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":888,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.84515,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ecdd08a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615969,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ecdd08a0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":889,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":889,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.704899,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1faa4b131947cece1e0ddc6b25e48abd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615969,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1faa4b131947cece1e0ddc6b25e48abd","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70e9740c-5243-41f1-8ec2-4520f3020627","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70e9740c-5243-41f1-8ec2-4520f3020627","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:06.940037669Z"}]},"request_id":"b81576a7-10da-4416-ab7e-26c71a7a1ee2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.3304253} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d723691-e647-412c-b824-5f94171928b9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d723691-e647-412c-b824-5f94171928b9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:06.988669546Z"}]},"request_id":"46a6e9fc-3e56-4746-8685-291ca0b6f123","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.3316712} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ecdce190-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ecdd08a0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d723691-e647-412c-b824-5f94171928b9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d723691-e647-412c-b824-5f94171928b9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:06.988669546Z"}]},"request_id":"04085b7b-f041-425b-9e49-437e681057a2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.335798} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1faa4b131947cece1e0ddc6b25e48abd","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ecdce190-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/70e9740c-5243-41f1-8ec2-4520f3020627? 200 17ms","method":"GET","requestID":"ecdce190-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/70e9740c-5243-41f1-8ec2-4520f3020627?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ecdd08a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/5d723691-e647-412c-b824-5f94171928b9? 200 17ms","method":"GET","requestID":"ecdd08a0-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/5d723691-e647-412c-b824-5f94171928b9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1faa4b131947cece1e0ddc6b25e48abd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b2364b9-5fbe-410c-8358-ca8218583742"},"level":"info","message":"Building connection plan","requestID":"51c5d4e8396360d3a6188351f20127fd"} device-1 | {"level":"info","message":"GET /devices/5d723691-e647-412c-b824-5f94171928b9? 200 15ms","method":"GET","requestID":"1faa4b131947cece1e0ddc6b25e48abd","responseTime":15,"status":200,"url":"/devices/5d723691-e647-412c-b824-5f94171928b9?"} 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":"af281f99-2797-4e86-9d16-63fb09fd774b"},{"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":"0b35534e-faae-4891-884a-db51dc384862"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"f31d4721-a1df-4fd2-a3ce-860091aa82bb"}]},"level":"info","message":"Built pairwise service configurations","requestID":"51c5d4e8396360d3a6188351f20127fd"} gateway-1 | {"time_local":"02/Aug/2024:16:26:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5d723691-e647-412c-b824-5f94171928b9? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1faa4b131947cece1e0ddc6b25e48abd"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"ece03cf0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"ece03cf0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"ece03cf0-50eb-11ef-a432-47ab85bb6d58","responseTime":2,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/64b97f32-5e83-432a-869e-583230e92e9a?id=480ce688-fedc-49cb-81d1-80f8b31b985a","ws://localhost/rooms/64b97f32-5e83-432a-869e-583230e92e9a?id=14d9bd96-8951-4c89-ae39-2857bd9fd62e"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"51c5d4e8396360d3a6188351f20127fd"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"ece0d930-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":890,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":890,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.06457,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ece0d930-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615969,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ece0d930-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"f32ffe8e-6ca5-458a-8b1c-ee48a60c2ba3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.3603714} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dfe6c171-64d4-4b89-8551-228d4c91cfdf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.3606358} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"ece0d930-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"ece0d930-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"ece0d930-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/c431c609-ebf2-44a1-9a0d-076a76713910'","requestID":"ece0d930-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/c431c609-ebf2-44a1-9a0d-076a76713910'","requestID":"ece0d930-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"ece0d930-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"ece0d930-50eb-11ef-8434-2f6d198c7397","responseTime":25,"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":"ece0d930-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c431c609-ebf2-44a1-9a0d-076a76713910' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c431c609-ebf2-44a1-9a0d-076a76713910","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"ece6a590-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"14d9bd96-8951-4c89-ae39-2857bd9fd62e\" in room \"http://localhost/rooms/64b97f32-5e83-432a-869e-583230e92e9a\"","requestID":"ece6a590-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"ece6a590-50eb-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2617fbad8ce253fcbbdb668df6ab6770","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":"2617fbad8ce253fcbbdb668df6ab6770","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"ece6f3b0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"480ce688-fedc-49cb-81d1-80f8b31b985a\" in room \"http://localhost/rooms/64b97f32-5e83-432a-869e-583230e92e9a\"","requestID":"ece6f3b0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"ece6f3b0-50eb-11ef-a432-47ab85bb6d58"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/c431c609-ebf2-44a1-9a0d-076a76713910"}}},"level":"info","message":"received a callback","requestID":"2617fbad8ce253fcbbdb668df6ab6770"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"14d9bd96-8951-4c89-ae39-2857bd9fd62e\" in room \"http://localhost/rooms/64b97f32-5e83-432a-869e-583230e92e9a\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"14d9bd96-8951-4c89-ae39-2857bd9fd62e\" in room \"http://localhost/rooms/64b97f32-5e83-432a-869e-583230e92e9a\""} device-1 | {"data":{"peerconnection":"c431c609-ebf2-44a1-9a0d-076a76713910","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"2617fbad8ce253fcbbdb668df6ab6770","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:09 +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":"2617fbad8ce253fcbbdb668df6ab6770"} device-1 | {"data":{"peerconnection":"c431c609-ebf2-44a1-9a0d-076a76713910","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b2364b9-5fbe-410c-8358-ca8218583742"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"51c5d4e8396360d3a6188351f20127fd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eceb8790-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":891,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70e9740c-5243-41f1-8ec2-4520f3020627","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fa086f81-3571-43f2-a230-256f955e55c8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.4223442} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":891,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.863051,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"eceb8790-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627","object_type":"device","rebac_allow":false,"scope_allow":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":"eceb8790-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c431c609-ebf2-44a1-9a0d-076a76713910' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c431c609-ebf2-44a1-9a0d-076a76713910","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eceb8790-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/70e9740c-5243-41f1-8ec2-4520f3020627/signaling 200 13ms","method":"POST","requestID":"eceb8790-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/70e9740c-5243-41f1-8ec2-4520f3020627/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"79c2164f7d72182a4c80ec02c5e81fb3","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":"79c2164f7d72182a4c80ec02c5e81fb3","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ecedf890-50eb-11ef-8434-2f6d198c7397"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/c431c609-ebf2-44a1-9a0d-076a76713910"}}},"level":"info","message":"received a callback","requestID":"79c2164f7d72182a4c80ec02c5e81fb3"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":892,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d723691-e647-412c-b824-5f94171928b9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"053764ae-33d7-46c9-9988-305b653932c9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.438333} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":892,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.681285,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"eceee2f0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ecedf890-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9","object_type":"device","rebac_allow":false,"scope_allow":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":"ecedf890-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":893,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ecedf890-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/5d723691-e647-412c-b824-5f94171928b9/signaling 200 10ms","method":"POST","requestID":"ecedf890-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/5d723691-e647-412c-b824-5f94171928b9/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc431c609-ebf2-44a1-9a0d-076a76713910","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eac967a8-475e-4c78-91dc-3827060bcc0c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.443792} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":893,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.066502,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c431c609-ebf2-44a1-9a0d-076a76713910","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"eceee2f0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/c431c609-ebf2-44a1-9a0d-076a76713910","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":"eceee2f0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"eceee2f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/c431c609-ebf2-44a1-9a0d-076a76713910 200 8ms","method":"GET","requestID":"eceee2f0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/peerconnections/c431c609-ebf2-44a1-9a0d-076a76713910"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 28ms","method":"POST","requestID":"79c2164f7d72182a4c80ec02c5e81fb3","responseTime":28,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:09 +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":"79c2164f7d72182a4c80ec02c5e81fb3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ecf26560-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":894,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70e9740c-5243-41f1-8ec2-4520f3020627","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"71c4e2dc-741c-4e64-82aa-96ba9a9bf1f9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.4668744} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":894,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.832089,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ecf26560-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627","object_type":"device","rebac_allow":false,"scope_allow":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":"ecf26560-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ecf26560-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/70e9740c-5243-41f1-8ec2-4520f3020627/signaling 200 9ms","method":"POST","requestID":"ecf26560-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/70e9740c-5243-41f1-8ec2-4520f3020627/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ecf43a20-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":895,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d723691-e647-412c-b824-5f94171928b9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"97ed648f-e3f1-4384-804e-77db04ce901d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.4794762} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":895,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.175908,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ecf43a20-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9","object_type":"device","rebac_allow":false,"scope_allow":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":"ecf43a20-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ecf43a20-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/5d723691-e647-412c-b824-5f94171928b9/signaling 200 10ms","method":"POST","requestID":"ecf43a20-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/5d723691-e647-412c-b824-5f94171928b9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU","level":"info","message":"auth send jwt","requestID":"c211e365da878f2e88cba390c5a92a61"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c211e365da878f2e88cba390c5a92a61","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/7b2364b9-5fbe-410c-8358-ca8218583742","requestID":"c211e365da878f2e88cba390c5a92a61"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":896,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":896,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.076801,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7b2364b9-5fbe-410c-8358-ca8218583742","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c211e365da878f2e88cba390c5a92a61","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/7b2364b9-5fbe-410c-8358-ca8218583742","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615969,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c211e365da878f2e88cba390c5a92a61","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/7b2364b9-5fbe-410c-8358-ca8218583742","requestID":"c211e365da878f2e88cba390c5a92a61"} gateway-1 | {"time_local":"02/Aug/2024:16:26:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/7b2364b9-5fbe-410c-8358-ca8218583742 HTTP/1.1","status": "200","body_bytes_sent":"1361","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c211e365da878f2e88cba390c5a92a61"} experiment-1 | {"level":"info","message":"GET /experiments/7b2364b9-5fbe-410c-8358-ca8218583742 200 15ms","method":"GET","requestID":"c211e365da878f2e88cba390c5a92a61","responseTime":15,"status":200,"url":"/experiments/7b2364b9-5fbe-410c-8358-ca8218583742"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU","level":"info","message":"auth send jwt","requestID":"e3da1dfa3eaff0b4a4295d734eba4a2c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e3da1dfa3eaff0b4a4295d734eba4a2c","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/7b2364b9-5fbe-410c-8358-ca8218583742","requestID":"e3da1dfa3eaff0b4a4295d734eba4a2c"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":897,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":897,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.309911,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7b2364b9-5fbe-410c-8358-ca8218583742","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e3da1dfa3eaff0b4a4295d734eba4a2c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/7b2364b9-5fbe-410c-8358-ca8218583742","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615969,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e3da1dfa3eaff0b4a4295d734eba4a2c","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b2364b9-5fbe-410c-8358-ca8218583742"},"level":"info","message":"Attempting to finish experiment","requestID":"e3da1dfa3eaff0b4a4295d734eba4a2c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"ecfd13c0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":898,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":898,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.76382,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c431c609-ebf2-44a1-9a0d-076a76713910","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ecfd13c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/c431c609-ebf2-44a1-9a0d-076a76713910","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615969,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ecfd13c0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/c431c609-ebf2-44a1-9a0d-076a76713910","device":"70e9740c-5243-41f1-8ec2-4520f3020627","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"02/Aug/2024:16:26:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/64b97f32-5e83-432a-869e-583230e92e9a?id=480ce688-fedc-49cb-81d1-80f8b31b985a HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.165","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":"8bbed1bd765e56383e79305f255bb9ba"} gateway-1 | {"time_local":"02/Aug/2024:16:26:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/64b97f32-5e83-432a-869e-583230e92e9a?id=14d9bd96-8951-4c89-ae39-2857bd9fd62e HTTP/1.1","status": "101","body_bytes_sent":"438","request_time":"0.166","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":"14ecc4d367a7aec9698c2044784f79aa"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/c431c609-ebf2-44a1-9a0d-076a76713910","device":"5d723691-e647-412c-b824-5f94171928b9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"480ce688-fedc-49cb-81d1-80f8b31b985a\" in room \"http://localhost/rooms/64b97f32-5e83-432a-869e-583230e92e9a\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"480ce688-fedc-49cb-81d1-80f8b31b985a\" from room \"http://localhost/rooms/64b97f32-5e83-432a-869e-583230e92e9a\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c431c609-ebf2-44a1-9a0d-076a76713910' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/c431c609-ebf2-44a1-9a0d-076a76713910' to 'http://localhost/callbacks/experiment'"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"14d9bd96-8951-4c89-ae39-2857bd9fd62e\" in room \"http://localhost/rooms/64b97f32-5e83-432a-869e-583230e92e9a\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"14d9bd96-8951-4c89-ae39-2857bd9fd62e\" from room \"http://localhost/rooms/64b97f32-5e83-432a-869e-583230e92e9a\""} device-1 | {"data":{"peerconnection":"c431c609-ebf2-44a1-9a0d-076a76713910","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"18254f58429304fd02769001e04557b4","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":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc431c609-ebf2-44a1-9a0d-076a76713910': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc431c609-ebf2-44a1-9a0d-076a76713910","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"7e376fee-374d-4606-b526-70f22f7c516e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.555994} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"18254f58429304fd02769001e04557b4","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7138ba47-be06-4311-85d5-490115d1e52a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.5559638} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"08fea639382afe92cec0109c1e9742b0","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/c431c609-ebf2-44a1-9a0d-076a76713910"}}},"level":"info","message":"received a callback","requestID":"18254f58429304fd02769001e04557b4"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"08fea639382afe92cec0109c1e9742b0","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"ecfd13c0-50eb-11ef-8434-2f6d198c7397","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/c431c609-ebf2-44a1-9a0d-076a76713910"}}},"level":"info","message":"received a callback","requestID":"08fea639382afe92cec0109c1e9742b0"} device-1 | {"data":{"peerconnection":"c431c609-ebf2-44a1-9a0d-076a76713910","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"ecfd13c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/c431c609-ebf2-44a1-9a0d-076a76713910 204 47ms","method":"DELETE","requestID":"ecfd13c0-50eb-11ef-8434-2f6d198c7397","responseTime":47,"status":204,"url":"/peerconnections/c431c609-ebf2-44a1-9a0d-076a76713910"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7b2364b9-5fbe-410c-8358-ca8218583742"},"level":"info","message":"Successfully finished experiment","requestID":"e3da1dfa3eaff0b4a4295d734eba4a2c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ed07c220-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":899,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70e9740c-5243-41f1-8ec2-4520f3020627","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8c8111ed-c6f9-4300-9ff7-4f9cbeac8fcc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.6093533} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":899,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.379478,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ed07c220-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627","object_type":"device","rebac_allow":false,"scope_allow":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":"ed07c220-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ed07c220-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/70e9740c-5243-41f1-8ec2-4520f3020627/signaling 200 14ms","method":"POST","requestID":"ed07c220-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/70e9740c-5243-41f1-8ec2-4520f3020627/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7b2364b9-5fbe-410c-8358-ca8218583742': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7b2364b9-5fbe-410c-8358-ca8218583742","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"b8055cff-7ea2-465a-b28a-c60a5b1a22ac","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.617498} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"be4ead1b-8bf2-4b82-a5dd-7d3cc5509c84","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.6183352} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ed0a8140-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"e3da1dfa3eaff0b4a4295d734eba4a2c","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":900,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d723691-e647-412c-b824-5f94171928b9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c375d98f-6fcc-44a1-bda2-729ad968c104","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.6277246} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":900,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.422376,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ed0a8140-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9","object_type":"device","rebac_allow":false,"scope_allow":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":"ed0a8140-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ed0a8140-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/5d723691-e647-412c-b824-5f94171928b9/signaling 200 22ms","method":"POST","requestID":"ed0a8140-50eb-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/5d723691-e647-412c-b824-5f94171928b9/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/7b2364b9-5fbe-410c-8358-ca8218583742","requestID":"e3da1dfa3eaff0b4a4295d734eba4a2c"} gateway-1 | {"time_local":"02/Aug/2024:16:26:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/7b2364b9-5fbe-410c-8358-ca8218583742 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":"e3da1dfa3eaff0b4a4295d734eba4a2c"} experiment-1 | {"level":"info","message":"DELETE /experiments/7b2364b9-5fbe-410c-8358-ca8218583742 204 168ms","method":"DELETE","requestID":"e3da1dfa3eaff0b4a4295d734eba4a2c","responseTime":168,"status":204,"url":"/experiments/7b2364b9-5fbe-410c-8358-ca8218583742"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 134ms","method":"POST","requestID":"18254f58429304fd02769001e04557b4","responseTime":134,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU","level":"info","message":"auth send jwt","requestID":"7be1bfcf3c95925c7bb64b645cbebdd5"} gateway-1 | {"time_local":"02/Aug/2024:16:26:09 +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":"18254f58429304fd02769001e04557b4"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7be1bfcf3c95925c7bb64b645cbebdd5","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"08fea639382afe92cec0109c1e9742b0","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:09 +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.137","http_referrer":"","http_user_agent":"node-fetch","requestID":"08fea639382afe92cec0109c1e9742b0"} device-1 | {"level":"info","message":"postDevices called","requestID":"7be1bfcf3c95925c7bb64b645cbebdd5"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":901,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":901,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.836756,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"7be1bfcf3c95925c7bb64b645cbebdd5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615969,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7be1bfcf3c95925c7bb64b645cbebdd5","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:26:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1781","request_time":"0.682","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":"a2746d844efaa2f68d2575cf49c16da8"} gateway-1 | {"time_local":"02/Aug/2024:16:26:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1784","request_time":"0.670","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":"fa70cee068cdce71c760689dd661afbe"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/70e9740c-5243-41f1-8ec2-4520f3020627' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/5d723691-e647-412c-b824-5f94171928b9' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F643729fd-2f6a-4ded-8b85-dee547829a6e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d3d4905d-3e95-4cc6-9c19-a97c41cd0021","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.723466} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7be1bfcf3c95925c7bb64b645cbebdd5","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a54c6259-5073-4fcc-836c-e75dbc87ddfb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.7276304} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"7be1bfcf3c95925c7bb64b645cbebdd5","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F643729fd-2f6a-4ded-8b85-dee547829a6e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"7971e2f6-f700-42af-bb2d-04b28c7fe48c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.7388618} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6e7e6835-e8cd-4422-9278-ac18de86a866","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.738969} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"7be1bfcf3c95925c7bb64b645cbebdd5","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F643729fd-2f6a-4ded-8b85-dee547829a6e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F643729fd-2f6a-4ded-8b85-dee547829a6e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:09.738819776Z"}]},"request_id":"bc9eee48-eb0b-40ad-b8d7-ee13797ece04","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.7422972} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7be1bfcf3c95925c7bb64b645cbebdd5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7be1bfcf3c95925c7bb64b645cbebdd5"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"7be1bfcf3c95925c7bb64b645cbebdd5","responseTime":49,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7be1bfcf3c95925c7bb64b645cbebdd5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU","level":"info","message":"auth send jwt","requestID":"d0e8c572bb60c24b3dafd0b32e614478"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d0e8c572bb60c24b3dafd0b32e614478","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d0e8c572bb60c24b3dafd0b32e614478"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":902,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":902,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.786132,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d0e8c572bb60c24b3dafd0b32e614478","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615969,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk2OX0.sCy797Cvb8r0vmEdyD8A1uwjSA6oPF17yC0qSJ9zWUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d0e8c572bb60c24b3dafd0b32e614478","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F628f0595-a922-474a-b378-08b22a504cc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"002b2063-e6fc-4368-8cda-7bd421369650","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.767224} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d0e8c572bb60c24b3dafd0b32e614478","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1498cc38-bf25-40c5-a6dd-a1697ade0d6a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.7715905} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"d0e8c572bb60c24b3dafd0b32e614478","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F628f0595-a922-474a-b378-08b22a504cc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"6eac2681-3b27-425d-ad32-9d5f33ff99f3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.781161} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7205d516-b62b-48ce-950a-48d74329988c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.781292} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"d0e8c572bb60c24b3dafd0b32e614478","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F628f0595-a922-474a-b378-08b22a504cc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F628f0595-a922-474a-b378-08b22a504cc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:09.781134930Z"}]},"request_id":"08a897b9-ca80-4ea8-9ab5-512f71b17ac7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615969.7846537} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d0e8c572bb60c24b3dafd0b32e614478","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d0e8c572bb60c24b3dafd0b32e614478"} device-1 | {"level":"info","message":"POST /devices? 201 37ms","method":"POST","requestID":"d0e8c572bb60c24b3dafd0b32e614478","responseTime":37,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d0e8c572bb60c24b3dafd0b32e614478"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f88b5c478df5854ee231653b4e17e46b","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":"f88b5c478df5854ee231653b4e17e46b","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/643729fd-2f6a-4ded-8b85-dee547829a6e/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":"f88b5c478df5854ee231653b4e17e46b"} device-1 | {"level":"info","message":"OPTIONS /devices/643729fd-2f6a-4ded-8b85-dee547829a6e/websocket 200 1ms","method":"OPTIONS","requestID":"f88b5c478df5854ee231653b4e17e46b","responseTime":1,"status":200,"url":"/devices/643729fd-2f6a-4ded-8b85-dee547829a6e/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3MX0.gWYDAIxcNSFRtTzVVAa8QO74aSX2FBlF8PlRFJBSNu0","level":"info","message":"auth send jwt","requestID":"9ff039f2741c5e5ad2308ef375f93d2d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9ff039f2741c5e5ad2308ef375f93d2d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9ff039f2741c5e5ad2308ef375f93d2d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":903,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:11Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":903,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.906412,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"9ff039f2741c5e5ad2308ef375f93d2d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615971,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3MX0.gWYDAIxcNSFRtTzVVAa8QO74aSX2FBlF8PlRFJBSNu0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9ff039f2741c5e5ad2308ef375f93d2d","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"41f7b5bea9cb05259c34b1898f0bdc71","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":"41f7b5bea9cb05259c34b1898f0bdc71","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/628f0595-a922-474a-b378-08b22a504cc5/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":"41f7b5bea9cb05259c34b1898f0bdc71"} device-1 | {"level":"info","message":"OPTIONS /devices/628f0595-a922-474a-b378-08b22a504cc5/websocket 200 1ms","method":"OPTIONS","requestID":"41f7b5bea9cb05259c34b1898f0bdc71","responseTime":1,"status":200,"url":"/devices/628f0595-a922-474a-b378-08b22a504cc5/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3MX0.gWYDAIxcNSFRtTzVVAa8QO74aSX2FBlF8PlRFJBSNu0","level":"info","message":"auth send jwt","requestID":"623e7c287da6038284b79638a1bdcd8f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9ff039f2741c5e5ad2308ef375f93d2d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"623e7c287da6038284b79638a1bdcd8f","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/643729fd-2f6a-4ded-8b85-dee547829a6e/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":"9ff039f2741c5e5ad2308ef375f93d2d"} device-1 | {"level":"info","message":"POST /devices/643729fd-2f6a-4ded-8b85-dee547829a6e/websocket 200 20ms","method":"POST","requestID":"9ff039f2741c5e5ad2308ef375f93d2d","responseTime":20,"status":200,"url":"/devices/643729fd-2f6a-4ded-8b85-dee547829a6e/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"623e7c287da6038284b79638a1bdcd8f"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":904,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:11Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":904,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.918822,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"623e7c287da6038284b79638a1bdcd8f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615971,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3MX0.gWYDAIxcNSFRtTzVVAa8QO74aSX2FBlF8PlRFJBSNu0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"623e7c287da6038284b79638a1bdcd8f","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"623e7c287da6038284b79638a1bdcd8f"} gateway-1 | {"time_local":"02/Aug/2024:16:26:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/628f0595-a922-474a-b378-08b22a504cc5/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","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":"623e7c287da6038284b79638a1bdcd8f"} device-1 | {"level":"info","message":"POST /devices/628f0595-a922-474a-b378-08b22a504cc5/websocket 200 14ms","method":"POST","requestID":"623e7c287da6038284b79638a1bdcd8f","responseTime":14,"status":200,"url":"/devices/628f0595-a922-474a-b378-08b22a504cc5/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fd7331a405afe652ebb83352a9397302","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":"fd7331a405afe652ebb83352a9397302","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/643729fd-2f6a-4ded-8b85-dee547829a6e? 200 1ms","method":"OPTIONS","requestID":"fd7331a405afe652ebb83352a9397302","responseTime":1,"status":200,"url":"/devices/643729fd-2f6a-4ded-8b85-dee547829a6e?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/643729fd-2f6a-4ded-8b85-dee547829a6e? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"fd7331a405afe652ebb83352a9397302"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3MX0.gWYDAIxcNSFRtTzVVAa8QO74aSX2FBlF8PlRFJBSNu0","level":"info","message":"auth send jwt","requestID":"378e6f08fe1c1187f9e9706fabe6d2f8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"378e6f08fe1c1187f9e9706fabe6d2f8","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"166849abe491630442d7ab562e705c0e","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":"166849abe491630442d7ab562e705c0e","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"378e6f08fe1c1187f9e9706fabe6d2f8"} gateway-1 | {"time_local":"02/Aug/2024:16:26:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/628f0595-a922-474a-b378-08b22a504cc5? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"166849abe491630442d7ab562e705c0e"} device-1 | {"level":"info","message":"OPTIONS /devices/628f0595-a922-474a-b378-08b22a504cc5? 200 0ms","method":"OPTIONS","requestID":"166849abe491630442d7ab562e705c0e","responseTime":0,"status":200,"url":"/devices/628f0595-a922-474a-b378-08b22a504cc5?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":905,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:11Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":905,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.661041,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"378e6f08fe1c1187f9e9706fabe6d2f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615971,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3MX0.gWYDAIxcNSFRtTzVVAa8QO74aSX2FBlF8PlRFJBSNu0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"378e6f08fe1c1187f9e9706fabe6d2f8","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3MX0.gWYDAIxcNSFRtTzVVAa8QO74aSX2FBlF8PlRFJBSNu0","level":"info","message":"auth send jwt","requestID":"b0e400a0f64c2b4ba924aaef5895bf19"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b0e400a0f64c2b4ba924aaef5895bf19","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b0e400a0f64c2b4ba924aaef5895bf19"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F643729fd-2f6a-4ded-8b85-dee547829a6e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F643729fd-2f6a-4ded-8b85-dee547829a6e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:09.738819776Z"}]},"request_id":"4c0b3211-3ff9-49cd-87df-f99401b9ad63","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615971.8752384} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"378e6f08fe1c1187f9e9706fabe6d2f8","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":906,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:11Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":906,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.073092,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b0e400a0f64c2b4ba924aaef5895bf19","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615971,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3MX0.gWYDAIxcNSFRtTzVVAa8QO74aSX2FBlF8PlRFJBSNu0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b0e400a0f64c2b4ba924aaef5895bf19","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8ee67eac-7e39-4d99-b101-29cd9d25dc6c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615971.881834} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"378e6f08fe1c1187f9e9706fabe6d2f8","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F628f0595-a922-474a-b378-08b22a504cc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F628f0595-a922-474a-b378-08b22a504cc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:09.781134930Z"}]},"request_id":"09e7f6f5-50da-4f68-8180-d1098eb56493","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615971.886446} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b0e400a0f64c2b4ba924aaef5895bf19","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d05b0740-67ab-4fbc-8e67-fa8f344d97c2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615971.8911936} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b0e400a0f64c2b4ba924aaef5895bf19","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F643729fd-2f6a-4ded-8b85-dee547829a6e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F643729fd-2f6a-4ded-8b85-dee547829a6e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:09.738819776Z"}]},"request_id":"c3a058f5-d204-48df-9791-f33d55d6f74f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615971.89454} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"378e6f08fe1c1187f9e9706fabe6d2f8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"378e6f08fe1c1187f9e9706fabe6d2f8"} device-1 | {"level":"info","message":"PATCH /devices/643729fd-2f6a-4ded-8b85-dee547829a6e? 200 30ms","method":"PATCH","requestID":"378e6f08fe1c1187f9e9706fabe6d2f8","responseTime":30,"status":200,"url":"/devices/643729fd-2f6a-4ded-8b85-dee547829a6e?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/643729fd-2f6a-4ded-8b85-dee547829a6e? HTTP/1.1","status": "200","body_bytes_sent":"1007","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":"378e6f08fe1c1187f9e9706fabe6d2f8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F628f0595-a922-474a-b378-08b22a504cc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F628f0595-a922-474a-b378-08b22a504cc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:09.781134930Z"}]},"request_id":"607454c5-84bb-428e-a06c-c7c0959464ec","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615971.9094625} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b0e400a0f64c2b4ba924aaef5895bf19","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b0e400a0f64c2b4ba924aaef5895bf19"} device-1 | {"level":"info","message":"PATCH /devices/628f0595-a922-474a-b378-08b22a504cc5? 200 40ms","method":"PATCH","requestID":"b0e400a0f64c2b4ba924aaef5895bf19","responseTime":40,"status":200,"url":"/devices/628f0595-a922-474a-b378-08b22a504cc5?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/628f0595-a922-474a-b378-08b22a504cc5? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.044","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":"b0e400a0f64c2b4ba924aaef5895bf19"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3MX0.gWYDAIxcNSFRtTzVVAa8QO74aSX2FBlF8PlRFJBSNu0","level":"info","message":"auth send jwt","requestID":"5bd0b3430e44408728351e02eda9ca5c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5bd0b3430e44408728351e02eda9ca5c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5bd0b3430e44408728351e02eda9ca5c"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":907,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:11Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":907,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.686089,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"5bd0b3430e44408728351e02eda9ca5c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615971,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3MX0.gWYDAIxcNSFRtTzVVAa8QO74aSX2FBlF8PlRFJBSNu0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5bd0b3430e44408728351e02eda9ca5c","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F643729fd-2f6a-4ded-8b85-dee547829a6e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F643729fd-2f6a-4ded-8b85-dee547829a6e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:09.738819776Z"}]},"request_id":"a849086c-1cee-49f2-b994-bf113ed9e2fe","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615971.9319565} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5bd0b3430e44408728351e02eda9ca5c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5bd0b3430e44408728351e02eda9ca5c"} gateway-1 | {"time_local":"02/Aug/2024:16:26:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/643729fd-2f6a-4ded-8b85-dee547829a6e? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5bd0b3430e44408728351e02eda9ca5c"} device-1 | {"level":"info","message":"GET /devices/643729fd-2f6a-4ded-8b85-dee547829a6e? 200 12ms","method":"GET","requestID":"5bd0b3430e44408728351e02eda9ca5c","responseTime":12,"status":200,"url":"/devices/643729fd-2f6a-4ded-8b85-dee547829a6e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3MX0.gWYDAIxcNSFRtTzVVAa8QO74aSX2FBlF8PlRFJBSNu0","level":"info","message":"auth send jwt","requestID":"07e961106c53e63ad51684131a38a7c2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"07e961106c53e63ad51684131a38a7c2","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"07e961106c53e63ad51684131a38a7c2"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":908,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:11Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":908,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.149864,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"07e961106c53e63ad51684131a38a7c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615971,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3MX0.gWYDAIxcNSFRtTzVVAa8QO74aSX2FBlF8PlRFJBSNu0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"07e961106c53e63ad51684131a38a7c2","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F628f0595-a922-474a-b378-08b22a504cc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F628f0595-a922-474a-b378-08b22a504cc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:09.781134930Z"}]},"request_id":"51be7ded-d489-4acf-ba6e-0b300c73f804","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615971.9511356} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"07e961106c53e63ad51684131a38a7c2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"07e961106c53e63ad51684131a38a7c2"} device-1 | {"level":"info","message":"GET /devices/628f0595-a922-474a-b378-08b22a504cc5? 200 12ms","method":"GET","requestID":"07e961106c53e63ad51684131a38a7c2","responseTime":12,"status":200,"url":"/devices/628f0595-a922-474a-b378-08b22a504cc5?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/628f0595-a922-474a-b378-08b22a504cc5? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"07e961106c53e63ad51684131a38a7c2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3MX0.gWYDAIxcNSFRtTzVVAa8QO74aSX2FBlF8PlRFJBSNu0","level":"info","message":"auth send jwt","requestID":"7bd5a11fd1a2fae4fd570e463e65517b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7bd5a11fd1a2fae4fd570e463e65517b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"7bd5a11fd1a2fae4fd570e463e65517b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":909,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:11Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":909,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.845083,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"7bd5a11fd1a2fae4fd570e463e65517b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615971,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3MX0.gWYDAIxcNSFRtTzVVAa8QO74aSX2FBlF8PlRFJBSNu0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7bd5a11fd1a2fae4fd570e463e65517b","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f"},"level":"info","message":"Attempting to run experiment","requestID":"7bd5a11fd1a2fae4fd570e463e65517b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f"},"level":"info","message":"Attempting to book experiment","requestID":"7bd5a11fd1a2fae4fd570e463e65517b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f"},"level":"info","message":"Successfully booked experiment","requestID":"7bd5a11fd1a2fae4fd570e463e65517b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ee75f820-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ee764640-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":910,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":910,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.96268,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":911,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ee75f820-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615971,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3MX0.gWYDAIxcNSFRtTzVVAa8QO74aSX2FBlF8PlRFJBSNu0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ee75f820-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":911,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.984186,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ee764640-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615971,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3MX0.gWYDAIxcNSFRtTzVVAa8QO74aSX2FBlF8PlRFJBSNu0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ee764640-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F643729fd-2f6a-4ded-8b85-dee547829a6e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F643729fd-2f6a-4ded-8b85-dee547829a6e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:09.738819776Z"}]},"request_id":"1e1836ae-b395-402c-a853-a02a457a8a7b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.0124424} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ee75f820-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F628f0595-a922-474a-b378-08b22a504cc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F628f0595-a922-474a-b378-08b22a504cc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:09.781134930Z"}]},"request_id":"40638a09-636d-49f2-b0cd-99123460564d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.0134726} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ee764640-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ee75f820-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/643729fd-2f6a-4ded-8b85-dee547829a6e? 200 17ms","method":"GET","requestID":"ee75f820-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/643729fd-2f6a-4ded-8b85-dee547829a6e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ee764640-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/628f0595-a922-474a-b378-08b22a504cc5? 200 16ms","method":"GET","requestID":"ee764640-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/628f0595-a922-474a-b378-08b22a504cc5?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f"},"level":"info","message":"Setting up experiment","requestID":"7bd5a11fd1a2fae4fd570e463e65517b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"7bd5a11fd1a2fae4fd570e463e65517b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"7bd5a11fd1a2fae4fd570e463e65517b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"7bd5a11fd1a2fae4fd570e463e65517b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"7bd5a11fd1a2fae4fd570e463e65517b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"7bd5a11fd1a2fae4fd570e463e65517b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"7bd5a11fd1a2fae4fd570e463e65517b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f"},"level":"info","message":"Successfully set up experiment","requestID":"7bd5a11fd1a2fae4fd570e463e65517b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ee7fe330-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ee803150-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ee805860-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f"},"level":"info","message":"Successfully running experiment","requestID":"7bd5a11fd1a2fae4fd570e463e65517b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":912,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":913,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":912,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.590807,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ee7fe330-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615971,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3MX0.gWYDAIxcNSFRtTzVVAa8QO74aSX2FBlF8PlRFJBSNu0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ee7fe330-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":913,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.203447,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ee803150-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615971,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3MX0.gWYDAIxcNSFRtTzVVAa8QO74aSX2FBlF8PlRFJBSNu0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ee803150-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34360","level":"info","msg":"Received request.","req_id":914,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"client_addr":"127.0.0.1:34360","level":"info","msg":"Sent response.","req_id":914,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.784373,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F643729fd-2f6a-4ded-8b85-dee547829a6e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"16b3f659-4e80-41cc-8030-0c60fdb20834","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.07874} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F643729fd-2f6a-4ded-8b85-dee547829a6e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F643729fd-2f6a-4ded-8b85-dee547829a6e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:09.738819776Z"}]},"request_id":"64143f27-c635-4444-970a-99f9c015d5fb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.080472} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ee805860-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e","object_type":"device","rebac_allow":false,"scope_allow":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":"ee805860-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F628f0595-a922-474a-b378-08b22a504cc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F628f0595-a922-474a-b378-08b22a504cc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:09.781134930Z"}]},"request_id":"0056f431-53e0-4c57-bc62-120088d44464","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.0822904} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"ee7fe330-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"ee803150-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ee805860-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/643729fd-2f6a-4ded-8b85-dee547829a6e/signaling 200 21ms","method":"POST","requestID":"ee805860-50eb-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/devices/643729fd-2f6a-4ded-8b85-dee547829a6e/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ee7fe330-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/643729fd-2f6a-4ded-8b85-dee547829a6e? 200 25ms","method":"GET","requestID":"ee7fe330-50eb-11ef-8434-2f6d198c7397","responseTime":25,"status":200,"url":"/devices/643729fd-2f6a-4ded-8b85-dee547829a6e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ee803150-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/628f0595-a922-474a-b378-08b22a504cc5? 200 25ms","method":"GET","requestID":"ee803150-50eb-11ef-8434-2f6d198c7397","responseTime":25,"status":200,"url":"/devices/628f0595-a922-474a-b378-08b22a504cc5?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ee8428f0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"4da8d9f7-3a4e-4c2a-ae44-f490ce31f6f0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.096634} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"229e48d2-ed3d-4c82-a4dc-9749cc1940b0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.096783} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ee847710-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"7bd5a11fd1a2fae4fd570e463e65517b","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":915,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":916,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F628f0595-a922-474a-b378-08b22a504cc5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"94393ae9-cf90-4a24-b523-072127298955","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.1010363} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":915,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.883857,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ee8428f0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5","object_type":"device","rebac_allow":false,"scope_allow":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":"ee8428f0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F643729fd-2f6a-4ded-8b85-dee547829a6e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9c4185db-e575-4282-a4fc-20406d8c92a7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.1030443} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":916,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.817722,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ee847710-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e","object_type":"device","rebac_allow":false,"scope_allow":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":"ee847710-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"7bd5a11fd1a2fae4fd570e463e65517b"} gateway-1 | {"time_local":"02/Aug/2024:16:26:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1288","request_time":"0.149","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7bd5a11fd1a2fae4fd570e463e65517b"} experiment-1 | {"level":"info","message":"POST /experiments? 201 143ms","method":"POST","requestID":"7bd5a11fd1a2fae4fd570e463e65517b","responseTime":143,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ee8428f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/628f0595-a922-474a-b378-08b22a504cc5/signaling 200 12ms","method":"POST","requestID":"ee8428f0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/628f0595-a922-474a-b378-08b22a504cc5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ee847710-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/643729fd-2f6a-4ded-8b85-dee547829a6e/signaling 200 11ms","method":"POST","requestID":"ee847710-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/643729fd-2f6a-4ded-8b85-dee547829a6e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3Mn0.XhlCazSW3E4XUK3quU4d_ohWAFfjkAEXmF3mGV9wyuk","level":"info","message":"auth send jwt","requestID":"b7661e47fdac1d804d7424bf31371be6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b7661e47fdac1d804d7424bf31371be6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ee8672e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b7661e47fdac1d804d7424bf31371be6"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":917,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":918,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":918,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.582219,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b7661e47fdac1d804d7424bf31371be6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615972,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3Mn0.XhlCazSW3E4XUK3quU4d_ohWAFfjkAEXmF3mGV9wyuk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b7661e47fdac1d804d7424bf31371be6","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F628f0595-a922-474a-b378-08b22a504cc5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b84403c9-8f2f-46d6-8d30-7267db4f6d4b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.1153479} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":917,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.846514,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ee8672e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5","object_type":"device","rebac_allow":false,"scope_allow":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":"ee8672e0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F643729fd-2f6a-4ded-8b85-dee547829a6e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F643729fd-2f6a-4ded-8b85-dee547829a6e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:09.738819776Z"}]},"request_id":"6d4d961b-a942-4c0b-9b04-4a432604d815","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.119356} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ee8672e0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b7661e47fdac1d804d7424bf31371be6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/628f0595-a922-474a-b378-08b22a504cc5/signaling 200 10ms","method":"POST","requestID":"ee8672e0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/628f0595-a922-474a-b378-08b22a504cc5/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"7bd5a11fd1a2fae4fd570e463e65517b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ee8847a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ee886eb0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b7661e47fdac1d804d7424bf31371be6"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":919,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} gateway-1 | {"time_local":"02/Aug/2024:16:26:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/643729fd-2f6a-4ded-8b85-dee547829a6e? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b7661e47fdac1d804d7424bf31371be6"} device-1 | {"level":"info","message":"GET /devices/643729fd-2f6a-4ded-8b85-dee547829a6e? 200 14ms","method":"GET","requestID":"b7661e47fdac1d804d7424bf31371be6","responseTime":14,"status":200,"url":"/devices/643729fd-2f6a-4ded-8b85-dee547829a6e?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":919,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.76182,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ee8847a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615971,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3MX0.gWYDAIxcNSFRtTzVVAa8QO74aSX2FBlF8PlRFJBSNu0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ee8847a0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":920,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":920,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.826291,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ee886eb0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615971,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3MX0.gWYDAIxcNSFRtTzVVAa8QO74aSX2FBlF8PlRFJBSNu0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ee886eb0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3Mn0.XhlCazSW3E4XUK3quU4d_ohWAFfjkAEXmF3mGV9wyuk","level":"info","message":"auth send jwt","requestID":"c07037d34342eaa10351dedd19fdac39"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c07037d34342eaa10351dedd19fdac39","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c07037d34342eaa10351dedd19fdac39"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F643729fd-2f6a-4ded-8b85-dee547829a6e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F643729fd-2f6a-4ded-8b85-dee547829a6e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:09.738819776Z"}]},"request_id":"f10b524a-3f5d-48fc-acf5-da4b5815503c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.1317043} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ee8847a0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F628f0595-a922-474a-b378-08b22a504cc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F628f0595-a922-474a-b378-08b22a504cc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:09.781134930Z"}]},"request_id":"64839e22-695a-4631-9dc5-4da25f36b0dd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.133146} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ee8847a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/643729fd-2f6a-4ded-8b85-dee547829a6e? 200 14ms","method":"GET","requestID":"ee8847a0-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/643729fd-2f6a-4ded-8b85-dee547829a6e?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ee886eb0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":921,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":921,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.848314,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c07037d34342eaa10351dedd19fdac39","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615972,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3Mn0.XhlCazSW3E4XUK3quU4d_ohWAFfjkAEXmF3mGV9wyuk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c07037d34342eaa10351dedd19fdac39","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ee886eb0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/628f0595-a922-474a-b378-08b22a504cc5? 200 16ms","method":"GET","requestID":"ee886eb0-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/628f0595-a922-474a-b378-08b22a504cc5?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f"},"level":"info","message":"Building connection plan","requestID":"7bd5a11fd1a2fae4fd570e463e65517b"} 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":"91ee9b89-29c1-4b65-a0f3-d9bf4c6f834b"},{"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":"38cffe03-02ea-47bf-a4d5-be27bfcad30c"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"a2577225-e374-4c1d-baf7-6693ca750d62"}]},"level":"info","message":"Built pairwise service configurations","requestID":"7bd5a11fd1a2fae4fd570e463e65517b"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F628f0595-a922-474a-b378-08b22a504cc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F628f0595-a922-474a-b378-08b22a504cc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:09.781134930Z"}]},"request_id":"e5c7ee15-6034-47e4-a4b0-f98266a4d28f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.1417124} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c07037d34342eaa10351dedd19fdac39","responseTime":3,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"ee8b54e0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"ee8b54e0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"POST /rooms 201 2ms","method":"POST","requestID":"ee8b54e0-50eb-11ef-a432-47ab85bb6d58","responseTime":2,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/bed471b4-8a73-41b6-9b60-67f11589bd36?id=1a474e68-7a16-4b46-9674-92336ac633ed","ws://localhost/rooms/bed471b4-8a73-41b6-9b60-67f11589bd36?id=100832a7-db71-4ede-8adc-3d70c80ebfda"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"7bd5a11fd1a2fae4fd570e463e65517b"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c07037d34342eaa10351dedd19fdac39"} gateway-1 | {"time_local":"02/Aug/2024:16:26:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/628f0595-a922-474a-b378-08b22a504cc5? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c07037d34342eaa10351dedd19fdac39"} device-1 | {"level":"info","message":"GET /devices/628f0595-a922-474a-b378-08b22a504cc5? 200 14ms","method":"GET","requestID":"c07037d34342eaa10351dedd19fdac39","responseTime":14,"status":200,"url":"/devices/628f0595-a922-474a-b378-08b22a504cc5?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"ee8bf120-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":922,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":922,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.67826,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ee8bf120-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615971,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3MX0.gWYDAIxcNSFRtTzVVAa8QO74aSX2FBlF8PlRFJBSNu0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ee8bf120-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"f8482cf3-0a4d-4fec-b826-0f7b7f1b2ba3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.157486} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6a82e287-2726-471f-9e79-97b7c9ed9c6e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.1579175} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ee8bf120-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"ee8bf120-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"ee8bf120-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2034d8ee-147d-48c6-903c-cb6b0b9f3bb8'","requestID":"ee8bf120-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2034d8ee-147d-48c6-903c-cb6b0b9f3bb8'","requestID":"ee8bf120-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"ee8bf120-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"ee8bf120-50eb-11ef-8434-2f6d198c7397","responseTime":25,"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":"ee8bf120-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2034d8ee-147d-48c6-903c-cb6b0b9f3bb8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2034d8ee-147d-48c6-903c-cb6b0b9f3bb8","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"ee919670-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"100832a7-db71-4ede-8adc-3d70c80ebfda\" in room \"http://localhost/rooms/bed471b4-8a73-41b6-9b60-67f11589bd36\"","requestID":"ee919670-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"ee919670-50eb-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6ff8a5f9ba987565decc629b71b55220","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)"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"ee91e490-50eb-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6ff8a5f9ba987565decc629b71b55220","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/2034d8ee-147d-48c6-903c-cb6b0b9f3bb8"}}},"level":"info","message":"received a callback","requestID":"6ff8a5f9ba987565decc629b71b55220"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1a474e68-7a16-4b46-9674-92336ac633ed\" in room \"http://localhost/rooms/bed471b4-8a73-41b6-9b60-67f11589bd36\"","requestID":"ee91e490-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"ee91e490-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1a474e68-7a16-4b46-9674-92336ac633ed\" in room \"http://localhost/rooms/bed471b4-8a73-41b6-9b60-67f11589bd36\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1a474e68-7a16-4b46-9674-92336ac633ed\" in room \"http://localhost/rooms/bed471b4-8a73-41b6-9b60-67f11589bd36\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1a474e68-7a16-4b46-9674-92336ac633ed\" in room \"http://localhost/rooms/bed471b4-8a73-41b6-9b60-67f11589bd36\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1a474e68-7a16-4b46-9674-92336ac633ed\" in room \"http://localhost/rooms/bed471b4-8a73-41b6-9b60-67f11589bd36\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1a474e68-7a16-4b46-9674-92336ac633ed\" in room \"http://localhost/rooms/bed471b4-8a73-41b6-9b60-67f11589bd36\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1a474e68-7a16-4b46-9674-92336ac633ed\" in room \"http://localhost/rooms/bed471b4-8a73-41b6-9b60-67f11589bd36\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1a474e68-7a16-4b46-9674-92336ac633ed\" in room \"http://localhost/rooms/bed471b4-8a73-41b6-9b60-67f11589bd36\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1a474e68-7a16-4b46-9674-92336ac633ed\" in room \"http://localhost/rooms/bed471b4-8a73-41b6-9b60-67f11589bd36\""} device-1 | {"data":{"peerconnection":"2034d8ee-147d-48c6-903c-cb6b0b9f3bb8","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"6ff8a5f9ba987565decc629b71b55220","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:12 +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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"6ff8a5f9ba987565decc629b71b55220"} device-1 | {"data":{"peerconnection":"2034d8ee-147d-48c6-903c-cb6b0b9f3bb8","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"7bd5a11fd1a2fae4fd570e463e65517b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ee962a50-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":923,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F643729fd-2f6a-4ded-8b85-dee547829a6e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"12be6aa9-71ab-4113-93e5-21b60a63612b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.2179468} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":923,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.563902,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ee962a50-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e","object_type":"device","rebac_allow":false,"scope_allow":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":"ee962a50-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2034d8ee-147d-48c6-903c-cb6b0b9f3bb8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2034d8ee-147d-48c6-903c-cb6b0b9f3bb8","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"feddc27cc03f735ecd4737efcf38f3f0","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)"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ee962a50-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"feddc27cc03f735ecd4737efcf38f3f0","responseTime":0,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/643729fd-2f6a-4ded-8b85-dee547829a6e/signaling 200 9ms","method":"POST","requestID":"ee962a50-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/643729fd-2f6a-4ded-8b85-dee547829a6e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ee97d800-50eb-11ef-8434-2f6d198c7397"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/2034d8ee-147d-48c6-903c-cb6b0b9f3bb8"}}},"level":"info","message":"received a callback","requestID":"feddc27cc03f735ecd4737efcf38f3f0"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":924,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F628f0595-a922-474a-b378-08b22a504cc5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e3020f56-1114-4d65-a9e4-d7548696a772","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.2285128} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":924,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.285304,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ee97d800-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5","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":"getPeerconnectionsByPeerconnectionId called","requestID":"ee989b50-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ee97d800-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":925,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ee97d800-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/628f0595-a922-474a-b378-08b22a504cc5/signaling 200 8ms","method":"POST","requestID":"ee97d800-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/628f0595-a922-474a-b378-08b22a504cc5/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2034d8ee-147d-48c6-903c-cb6b0b9f3bb8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0d86b48c-fb77-468d-99b9-d14e3b912787","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.233453} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":925,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.534203,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2034d8ee-147d-48c6-903c-cb6b0b9f3bb8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ee989b50-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2034d8ee-147d-48c6-903c-cb6b0b9f3bb8","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":"ee989b50-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"ee989b50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/2034d8ee-147d-48c6-903c-cb6b0b9f3bb8 200 7ms","method":"GET","requestID":"ee989b50-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/peerconnections/2034d8ee-147d-48c6-903c-cb6b0b9f3bb8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 25ms","method":"POST","requestID":"feddc27cc03f735ecd4737efcf38f3f0","responseTime":25,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:12 +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":"feddc27cc03f735ecd4737efcf38f3f0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ee9bcfa0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":926,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F628f0595-a922-474a-b378-08b22a504cc5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f1dda61a-8446-44b0-902c-6dd3c761ff24","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.2543714} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":926,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.697713,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ee9bcfa0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5","object_type":"device","rebac_allow":false,"scope_allow":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":"ee9bcfa0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ee9bcfa0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/628f0595-a922-474a-b378-08b22a504cc5/signaling 200 8ms","method":"POST","requestID":"ee9bcfa0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/628f0595-a922-474a-b378-08b22a504cc5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ee9d5640-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":927,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F643729fd-2f6a-4ded-8b85-dee547829a6e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"01d12c4b-8165-41e4-8bc0-929bd7494b8b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.2638628} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":927,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.183199,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ee9d5640-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e","object_type":"device","rebac_allow":false,"scope_allow":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":"ee9d5640-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ee9d5640-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/643729fd-2f6a-4ded-8b85-dee547829a6e/signaling 200 7ms","method":"POST","requestID":"ee9d5640-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/devices/643729fd-2f6a-4ded-8b85-dee547829a6e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3Mn0.XhlCazSW3E4XUK3quU4d_ohWAFfjkAEXmF3mGV9wyuk","level":"info","message":"auth send jwt","requestID":"b14456eb947d3854f24bf58e91b78932"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b14456eb947d3854f24bf58e91b78932","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f","requestID":"b14456eb947d3854f24bf58e91b78932"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":928,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":928,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.167079,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b14456eb947d3854f24bf58e91b78932","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615972,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3Mn0.XhlCazSW3E4XUK3quU4d_ohWAFfjkAEXmF3mGV9wyuk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b14456eb947d3854f24bf58e91b78932","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f","requestID":"b14456eb947d3854f24bf58e91b78932"} gateway-1 | {"time_local":"02/Aug/2024:16:26:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f HTTP/1.1","status": "200","body_bytes_sent":"1361","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b14456eb947d3854f24bf58e91b78932"} experiment-1 | {"level":"info","message":"GET /experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f 200 12ms","method":"GET","requestID":"b14456eb947d3854f24bf58e91b78932","responseTime":12,"status":200,"url":"/experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3Mn0.XhlCazSW3E4XUK3quU4d_ohWAFfjkAEXmF3mGV9wyuk","level":"info","message":"auth send jwt","requestID":"9b9aefd8e2e96f0f71a02c6f348f3669"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9b9aefd8e2e96f0f71a02c6f348f3669","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f","requestID":"9b9aefd8e2e96f0f71a02c6f348f3669"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":929,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":929,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.675674,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"9b9aefd8e2e96f0f71a02c6f348f3669","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615972,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3Mn0.XhlCazSW3E4XUK3quU4d_ohWAFfjkAEXmF3mGV9wyuk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9b9aefd8e2e96f0f71a02c6f348f3669","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f"},"level":"info","message":"Attempting to finish experiment","requestID":"9b9aefd8e2e96f0f71a02c6f348f3669"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"eea76860-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":930,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":930,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.314104,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2034d8ee-147d-48c6-903c-cb6b0b9f3bb8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"eea76860-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/2034d8ee-147d-48c6-903c-cb6b0b9f3bb8","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615972,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3Mn0.XhlCazSW3E4XUK3quU4d_ohWAFfjkAEXmF3mGV9wyuk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"eea76860-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2034d8ee-147d-48c6-903c-cb6b0b9f3bb8","device":"643729fd-2f6a-4ded-8b85-dee547829a6e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"02/Aug/2024:16:26:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/bed471b4-8a73-41b6-9b60-67f11589bd36?id=1a474e68-7a16-4b46-9674-92336ac633ed HTTP/1.1","status": "101","body_bytes_sent":"874","request_time":"0.162","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":"39e6ac502f60a50b5aa0472880d1ac73"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2034d8ee-147d-48c6-903c-cb6b0b9f3bb8","device":"628f0595-a922-474a-b378-08b22a504cc5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"02/Aug/2024:16:26:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/bed471b4-8a73-41b6-9b60-67f11589bd36?id=100832a7-db71-4ede-8adc-3d70c80ebfda HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.163","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":"2c49cb3b2bcc0058b482b5de5a229fe4"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"1a474e68-7a16-4b46-9674-92336ac633ed\" in room \"http://localhost/rooms/bed471b4-8a73-41b6-9b60-67f11589bd36\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2034d8ee-147d-48c6-903c-cb6b0b9f3bb8' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2034d8ee-147d-48c6-903c-cb6b0b9f3bb8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2034d8ee-147d-48c6-903c-cb6b0b9f3bb8","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"1a474e68-7a16-4b46-9674-92336ac633ed\" from room \"http://localhost/rooms/bed471b4-8a73-41b6-9b60-67f11589bd36\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"100832a7-db71-4ede-8adc-3d70c80ebfda\" in room \"http://localhost/rooms/bed471b4-8a73-41b6-9b60-67f11589bd36\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"100832a7-db71-4ede-8adc-3d70c80ebfda\" from room \"http://localhost/rooms/bed471b4-8a73-41b6-9b60-67f11589bd36\""} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2034d8ee-147d-48c6-903c-cb6b0b9f3bb8': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2034d8ee-147d-48c6-903c-cb6b0b9f3bb8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"cc600745-fa66-41b6-8404-28be7d668343","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.3483953} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"54336e21-993c-49c2-a470-c8a46c4bb3d8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.3487155} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"223d7d1b63cdf931483104e71bbd7146","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":"223d7d1b63cdf931483104e71bbd7146","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"eea76860-50eb-11ef-8434-2f6d198c7397","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/2034d8ee-147d-48c6-903c-cb6b0b9f3bb8"}}},"level":"info","message":"received a callback","requestID":"223d7d1b63cdf931483104e71bbd7146"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6eaf289c58889773bc0bcc4c82625d41","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":"6eaf289c58889773bc0bcc4c82625d41","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/2034d8ee-147d-48c6-903c-cb6b0b9f3bb8"}}},"level":"info","message":"received a callback","requestID":"6eaf289c58889773bc0bcc4c82625d41"} device-1 | {"data":{"peerconnection":"2034d8ee-147d-48c6-903c-cb6b0b9f3bb8","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"eea76860-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/2034d8ee-147d-48c6-903c-cb6b0b9f3bb8 204 48ms","method":"DELETE","requestID":"eea76860-50eb-11ef-8434-2f6d198c7397","responseTime":48,"status":204,"url":"/peerconnections/2034d8ee-147d-48c6-903c-cb6b0b9f3bb8"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f"},"level":"info","message":"Successfully finished experiment","requestID":"9b9aefd8e2e96f0f71a02c6f348f3669"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eeb23dd0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":931,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F628f0595-a922-474a-b378-08b22a504cc5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"939d2da9-d0dd-4733-8b9f-2b3332b9cfde","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.4053106} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":931,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.646502,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"eeb23dd0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5","object_type":"device","rebac_allow":false,"scope_allow":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":"eeb23dd0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eeb23dd0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"b88ca6e9-4a11-42f9-bf69-458a9c316e53","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.412032} device-1 | {"level":"info","message":"POST /devices/628f0595-a922-474a-b378-08b22a504cc5/signaling 200 15ms","method":"POST","requestID":"eeb23dd0-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/628f0595-a922-474a-b378-08b22a504cc5/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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bbc861df-2099-49f0-b21e-c325cc34ccbe","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.412766} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"9b9aefd8e2e96f0f71a02c6f348f3669","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eeb54b10-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":932,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F643729fd-2f6a-4ded-8b85-dee547829a6e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5cfde35c-f59c-4356-b410-e29af60c821c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.4247599} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":932,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.047382,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"eeb54b10-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/643729fd-2f6a-4ded-8b85-dee547829a6e","object_type":"device","rebac_allow":false,"scope_allow":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":"eeb54b10-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eeb54b10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/643729fd-2f6a-4ded-8b85-dee547829a6e/signaling 200 14ms","method":"POST","requestID":"eeb54b10-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/643729fd-2f6a-4ded-8b85-dee547829a6e/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f","requestID":"9b9aefd8e2e96f0f71a02c6f348f3669"} gateway-1 | {"time_local":"02/Aug/2024:16:26:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.167","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9b9aefd8e2e96f0f71a02c6f348f3669"} experiment-1 | {"level":"info","message":"DELETE /experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f 204 165ms","method":"DELETE","requestID":"9b9aefd8e2e96f0f71a02c6f348f3669","responseTime":165,"status":204,"url":"/experiments/8a378b8f-e1d4-4aeb-bbf3-a0219bf8125f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"223d7d1b63cdf931483104e71bbd7146","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:12 +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.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"223d7d1b63cdf931483104e71bbd7146"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"6eaf289c58889773bc0bcc4c82625d41","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:12 +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":"6eaf289c58889773bc0bcc4c82625d41"} device-1 | {"level":"info","message":"postDevices called","requestID":"d64f4d2b997a8e666aa39f080d00af63"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3Mn0.XhlCazSW3E4XUK3quU4d_ohWAFfjkAEXmF3mGV9wyuk","level":"info","message":"auth send jwt","requestID":"d64f4d2b997a8e666aa39f080d00af63"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d64f4d2b997a8e666aa39f080d00af63","responseTime":5,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1782","request_time":"0.647","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":"862d75276d3737e4b760bc265c0324cc"} gateway-1 | {"time_local":"02/Aug/2024:16:26:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1783","request_time":"0.663","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":"c1c5fb304d484f34cf035446c51a55c8"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":933,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":933,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.893286,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d64f4d2b997a8e666aa39f080d00af63","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615972,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3Mn0.XhlCazSW3E4XUK3quU4d_ohWAFfjkAEXmF3mGV9wyuk"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/628f0595-a922-474a-b378-08b22a504cc5' closed"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d64f4d2b997a8e666aa39f080d00af63","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/643729fd-2f6a-4ded-8b85-dee547829a6e' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F754f5b5b-ab8a-4dde-85c5-ad0e788111e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b445f2cd-5293-49bc-bdd3-6698e59bbf4f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.5101528} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d64f4d2b997a8e666aa39f080d00af63","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d631cab6-333b-4995-88da-e1ffa7ee1259","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.5149984} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d64f4d2b997a8e666aa39f080d00af63","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F754f5b5b-ab8a-4dde-85c5-ad0e788111e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"7c86747d-7279-4434-88ec-edc576730cad","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.525826} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae87d934-6894-46d3-bc4f-c124be64d567","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.5259168} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"d64f4d2b997a8e666aa39f080d00af63","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F754f5b5b-ab8a-4dde-85c5-ad0e788111e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F754f5b5b-ab8a-4dde-85c5-ad0e788111e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:12.525799739Z"}]},"request_id":"2bbb4ba6-7d6c-45e9-984c-0838b42166e9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.5303133} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d64f4d2b997a8e666aa39f080d00af63","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d64f4d2b997a8e666aa39f080d00af63"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"d64f4d2b997a8e666aa39f080d00af63","responseTime":46,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d64f4d2b997a8e666aa39f080d00af63"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3Mn0.XhlCazSW3E4XUK3quU4d_ohWAFfjkAEXmF3mGV9wyuk","level":"info","message":"auth send jwt","requestID":"6af03c4007b8c5a0f86aa631acee77eb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6af03c4007b8c5a0f86aa631acee77eb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6af03c4007b8c5a0f86aa631acee77eb"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":934,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":934,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.975563,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"6af03c4007b8c5a0f86aa631acee77eb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615972,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3Mn0.XhlCazSW3E4XUK3quU4d_ohWAFfjkAEXmF3mGV9wyuk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6af03c4007b8c5a0f86aa631acee77eb","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7691fb1-15f0-43ce-9991-d2bcbd644bbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7cc9e71b-7126-4298-82d4-cb0c8ecc8174","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.5543556} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6af03c4007b8c5a0f86aa631acee77eb","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2b10ed05-0075-4523-aebe-ea639d8321a5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.5582507} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"6af03c4007b8c5a0f86aa631acee77eb","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7691fb1-15f0-43ce-9991-d2bcbd644bbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"a750a143-7ba4-44e0-90d6-d097dc8f756a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.5668206} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7bf5d245-59db-4ae4-8b71-4d4323eb4f05","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.5670345} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"6af03c4007b8c5a0f86aa631acee77eb","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7691fb1-15f0-43ce-9991-d2bcbd644bbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7691fb1-15f0-43ce-9991-d2bcbd644bbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:12.566779809Z"}]},"request_id":"3c9a71aa-0e9e-4fba-a6c3-2f1c23c48115","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615972.5703216} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6af03c4007b8c5a0f86aa631acee77eb","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6af03c4007b8c5a0f86aa631acee77eb"} device-1 | {"level":"info","message":"POST /devices? 201 35ms","method":"POST","requestID":"6af03c4007b8c5a0f86aa631acee77eb","responseTime":35,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.039","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6af03c4007b8c5a0f86aa631acee77eb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3M30.yO4gEFjTVFgW-Q65l88jhoIhw8CUnjRYFje1-wPgRck","level":"info","message":"auth send jwt","requestID":"7945b1b75cbee54f4a5f634bd831cb66"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7945b1b75cbee54f4a5f634bd831cb66","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"7945b1b75cbee54f4a5f634bd831cb66"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":935,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:13Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":935,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.262776,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"7945b1b75cbee54f4a5f634bd831cb66","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615973,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3M30.yO4gEFjTVFgW-Q65l88jhoIhw8CUnjRYFje1-wPgRck"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7945b1b75cbee54f4a5f634bd831cb66","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7691fb1-15f0-43ce-9991-d2bcbd644bbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7691fb1-15f0-43ce-9991-d2bcbd644bbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:12.566779809Z"}]},"request_id":"d523b85a-75fd-4742-8490-a01dd0f1bd41","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615973.092367} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7945b1b75cbee54f4a5f634bd831cb66","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"55147937-b088-421e-9804-d22e83eb078c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615973.0969179} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"7945b1b75cbee54f4a5f634bd831cb66","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7691fb1-15f0-43ce-9991-d2bcbd644bbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7691fb1-15f0-43ce-9991-d2bcbd644bbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:12.566779809Z"}]},"request_id":"c4cfddd4-d9b9-4b24-9bb4-810f29ecdb22","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615973.1100793} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7945b1b75cbee54f4a5f634bd831cb66","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"7945b1b75cbee54f4a5f634bd831cb66"} device-1 | {"level":"info","message":"PATCH /devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc 200 31ms","method":"PATCH","requestID":"7945b1b75cbee54f4a5f634bd831cb66","responseTime":31,"status":200,"url":"/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc"} gateway-1 | {"time_local":"02/Aug/2024:16:26:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.038","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"7945b1b75cbee54f4a5f634bd831cb66"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3M30.yO4gEFjTVFgW-Q65l88jhoIhw8CUnjRYFje1-wPgRck","level":"info","message":"auth send jwt","requestID":"f9a930050d7e659be22d98f7af323542"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f9a930050d7e659be22d98f7af323542","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f9a930050d7e659be22d98f7af323542"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":936,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:13Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":936,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.64899,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f9a930050d7e659be22d98f7af323542","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615973,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3M30.yO4gEFjTVFgW-Q65l88jhoIhw8CUnjRYFje1-wPgRck"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f9a930050d7e659be22d98f7af323542","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f9a930050d7e659be22d98f7af323542"} gateway-1 | {"time_local":"02/Aug/2024:16:26:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"f9a930050d7e659be22d98f7af323542"} device-1 | {"level":"info","message":"POST /devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc/websocket 200 17ms","method":"POST","requestID":"f9a930050d7e659be22d98f7af323542","responseTime":17,"status":200,"url":"/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7a1c0960401a1cf27fde7dbb56c92156","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":"7a1c0960401a1cf27fde7dbb56c92156","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4/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":"7a1c0960401a1cf27fde7dbb56c92156"} device-1 | {"level":"info","message":"OPTIONS /devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4/websocket 200 1ms","method":"OPTIONS","requestID":"7a1c0960401a1cf27fde7dbb56c92156","responseTime":1,"status":200,"url":"/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NH0.cLync5Od01J75UZpxaRhsyb2Qg6ra5As7CoDkc1_Saw","level":"info","message":"auth send jwt","requestID":"0a64544aa35582228e73e7a46e20914d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0a64544aa35582228e73e7a46e20914d","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0a64544aa35582228e73e7a46e20914d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":937,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":937,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.203624,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0a64544aa35582228e73e7a46e20914d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615974,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NH0.cLync5Od01J75UZpxaRhsyb2Qg6ra5As7CoDkc1_Saw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0a64544aa35582228e73e7a46e20914d","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0a64544aa35582228e73e7a46e20914d"} device-1 | {"level":"info","message":"POST /devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4/websocket 200 22ms","method":"POST","requestID":"0a64544aa35582228e73e7a46e20914d","responseTime":22,"status":200,"url":"/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:26:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4/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":"0a64544aa35582228e73e7a46e20914d"} device-1 | {"level":"info","message":"device 'http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9b55abd688c8e7d5aabcc37e196ec413","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":"9b55abd688c8e7d5aabcc37e196ec413","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"9b55abd688c8e7d5aabcc37e196ec413"} device-1 | {"level":"info","message":"OPTIONS /devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4? 200 1ms","method":"OPTIONS","requestID":"9b55abd688c8e7d5aabcc37e196ec413","responseTime":1,"status":200,"url":"/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NH0.cLync5Od01J75UZpxaRhsyb2Qg6ra5As7CoDkc1_Saw","level":"info","message":"auth send jwt","requestID":"8f133ea4bc97ef268e8945029d2ed4c6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8f133ea4bc97ef268e8945029d2ed4c6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"8f133ea4bc97ef268e8945029d2ed4c6"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":938,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":938,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.322441,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"8f133ea4bc97ef268e8945029d2ed4c6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615974,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NH0.cLync5Od01J75UZpxaRhsyb2Qg6ra5As7CoDkc1_Saw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8f133ea4bc97ef268e8945029d2ed4c6","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F754f5b5b-ab8a-4dde-85c5-ad0e788111e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F754f5b5b-ab8a-4dde-85c5-ad0e788111e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:12.525799739Z"}]},"request_id":"4b35fa48-94b8-498d-b8c8-6c1fa71e651f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615974.6805196} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8f133ea4bc97ef268e8945029d2ed4c6","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"23306fff-8a6a-4659-9581-8c20d9f5db5a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615974.687252} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"8f133ea4bc97ef268e8945029d2ed4c6","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F754f5b5b-ab8a-4dde-85c5-ad0e788111e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F754f5b5b-ab8a-4dde-85c5-ad0e788111e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:12.525799739Z"}]},"request_id":"466c5bbb-490e-43e5-80a4-760b3be12fc6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615974.702108} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8f133ea4bc97ef268e8945029d2ed4c6","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"8f133ea4bc97ef268e8945029d2ed4c6"} device-1 | {"level":"info","message":"PATCH /devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4? 200 38ms","method":"PATCH","requestID":"8f133ea4bc97ef268e8945029d2ed4c6","responseTime":38,"status":200,"url":"/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.044","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":"8f133ea4bc97ef268e8945029d2ed4c6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NH0.cLync5Od01J75UZpxaRhsyb2Qg6ra5As7CoDkc1_Saw","level":"info","message":"auth send jwt","requestID":"c7264b6b9d4465328fc8e28a0f2d7512"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c7264b6b9d4465328fc8e28a0f2d7512","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c7264b6b9d4465328fc8e28a0f2d7512"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":939,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":939,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.259345,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c7264b6b9d4465328fc8e28a0f2d7512","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615974,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NH0.cLync5Od01J75UZpxaRhsyb2Qg6ra5As7CoDkc1_Saw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c7264b6b9d4465328fc8e28a0f2d7512","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F754f5b5b-ab8a-4dde-85c5-ad0e788111e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F754f5b5b-ab8a-4dde-85c5-ad0e788111e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:12.525799739Z"}]},"request_id":"415dfd0c-9323-4a22-84d6-230056696cb3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615974.7302039} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c7264b6b9d4465328fc8e28a0f2d7512","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c7264b6b9d4465328fc8e28a0f2d7512"} gateway-1 | {"time_local":"02/Aug/2024:16:26:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c7264b6b9d4465328fc8e28a0f2d7512"} device-1 | {"level":"info","message":"GET /devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4? 200 16ms","method":"GET","requestID":"c7264b6b9d4465328fc8e28a0f2d7512","responseTime":16,"status":200,"url":"/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NH0.cLync5Od01J75UZpxaRhsyb2Qg6ra5As7CoDkc1_Saw","level":"info","message":"auth send jwt","requestID":"fd271da0c68d4fbabe3406c669872895"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fd271da0c68d4fbabe3406c669872895","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fd271da0c68d4fbabe3406c669872895"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":940,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":940,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.094098,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fd271da0c68d4fbabe3406c669872895","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615974,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NH0.cLync5Od01J75UZpxaRhsyb2Qg6ra5As7CoDkc1_Saw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fd271da0c68d4fbabe3406c669872895","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7691fb1-15f0-43ce-9991-d2bcbd644bbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7691fb1-15f0-43ce-9991-d2bcbd644bbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:12.566779809Z"}]},"request_id":"4f745a96-2e57-48ed-af4a-287b11bb3f01","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615974.7518702} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"fd271da0c68d4fbabe3406c669872895","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fd271da0c68d4fbabe3406c669872895"} gateway-1 | {"time_local":"02/Aug/2024:16:26:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fd271da0c68d4fbabe3406c669872895"} device-1 | {"level":"info","message":"GET /devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc? 200 13ms","method":"GET","requestID":"fd271da0c68d4fbabe3406c669872895","responseTime":13,"status":200,"url":"/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NH0.cLync5Od01J75UZpxaRhsyb2Qg6ra5As7CoDkc1_Saw","level":"info","message":"auth send jwt","requestID":"81951e22ec710b0335d4bdfef0d3bbe5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"81951e22ec710b0335d4bdfef0d3bbe5","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"81951e22ec710b0335d4bdfef0d3bbe5"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":941,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":941,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.909448,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"81951e22ec710b0335d4bdfef0d3bbe5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615974,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NH0.cLync5Od01J75UZpxaRhsyb2Qg6ra5As7CoDkc1_Saw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"81951e22ec710b0335d4bdfef0d3bbe5","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2846370-868b-4318-8cc0-8a4b788427f6"},"level":"info","message":"Attempting to run experiment","requestID":"81951e22ec710b0335d4bdfef0d3bbe5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2846370-868b-4318-8cc0-8a4b788427f6"},"level":"info","message":"Attempting to book experiment","requestID":"81951e22ec710b0335d4bdfef0d3bbe5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2846370-868b-4318-8cc0-8a4b788427f6"},"level":"info","message":"Successfully booked experiment","requestID":"81951e22ec710b0335d4bdfef0d3bbe5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f0222180-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f0226fa0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":942,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":942,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.788434,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f0222180-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615974,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NH0.cLync5Od01J75UZpxaRhsyb2Qg6ra5As7CoDkc1_Saw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f0222180-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":943,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":943,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.694524,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f0226fa0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615974,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NH0.cLync5Od01J75UZpxaRhsyb2Qg6ra5As7CoDkc1_Saw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f0226fa0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F754f5b5b-ab8a-4dde-85c5-ad0e788111e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F754f5b5b-ab8a-4dde-85c5-ad0e788111e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:12.525799739Z"}]},"request_id":"97945cca-7401-410e-bdc9-b5408abf86bb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615974.820495} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f0222180-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7691fb1-15f0-43ce-9991-d2bcbd644bbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7691fb1-15f0-43ce-9991-d2bcbd644bbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:12.566779809Z"}]},"request_id":"2d9bb8b4-9c11-453e-84dc-f50344bee006","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615974.8220947} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f0226fa0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f0222180-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4? 200 20ms","method":"GET","requestID":"f0222180-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f0226fa0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc? 200 19ms","method":"GET","requestID":"f0226fa0-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2846370-868b-4318-8cc0-8a4b788427f6"},"level":"info","message":"Setting up experiment","requestID":"81951e22ec710b0335d4bdfef0d3bbe5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2846370-868b-4318-8cc0-8a4b788427f6"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"81951e22ec710b0335d4bdfef0d3bbe5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2846370-868b-4318-8cc0-8a4b788427f6"},"level":"info","message":"Successfully locked booking for experiment","requestID":"81951e22ec710b0335d4bdfef0d3bbe5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2846370-868b-4318-8cc0-8a4b788427f6"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"81951e22ec710b0335d4bdfef0d3bbe5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2846370-868b-4318-8cc0-8a4b788427f6"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"81951e22ec710b0335d4bdfef0d3bbe5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2846370-868b-4318-8cc0-8a4b788427f6"},"level":"info","message":"Attempting to update booking for experiment","requestID":"81951e22ec710b0335d4bdfef0d3bbe5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2846370-868b-4318-8cc0-8a4b788427f6"},"level":"info","message":"Successfully updated booking for experiment","requestID":"81951e22ec710b0335d4bdfef0d3bbe5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2846370-868b-4318-8cc0-8a4b788427f6"},"level":"info","message":"Successfully set up experiment","requestID":"81951e22ec710b0335d4bdfef0d3bbe5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f02d9330-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f02dba40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f02e0860-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2846370-868b-4318-8cc0-8a4b788427f6"},"level":"info","message":"Successfully running experiment","requestID":"81951e22ec710b0335d4bdfef0d3bbe5"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":944,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":944,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.099112,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":945,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f02d9330-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615974,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NH0.cLync5Od01J75UZpxaRhsyb2Qg6ra5As7CoDkc1_Saw"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"f02d9330-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":945,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.024901,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"client_addr":"127.0.0.1:34360","level":"info","msg":"Received request.","req_id":946,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f02dba40-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615974,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NH0.cLync5Od01J75UZpxaRhsyb2Qg6ra5As7CoDkc1_Saw"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"f02dba40-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34360","level":"info","msg":"Sent response.","req_id":946,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.769847,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F754f5b5b-ab8a-4dde-85c5-ad0e788111e4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0392139c-6c31-472f-afa7-1058fa2ab011","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615974.8943589} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f02e0860-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 16ms","method":"POST","requestID":"f02e0860-50eb-11ef-8434-2f6d198c7397","responseTime":16,"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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F754f5b5b-ab8a-4dde-85c5-ad0e788111e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F754f5b5b-ab8a-4dde-85c5-ad0e788111e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:12.525799739Z"}]},"request_id":"389d61c9-4fa4-4669-bce3-99773eca900e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615974.9051557} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"f02d9330-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f02e0860-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7691fb1-15f0-43ce-9991-d2bcbd644bbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7691fb1-15f0-43ce-9991-d2bcbd644bbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:12.566779809Z"}]},"request_id":"389b847e-578f-4554-9524-9a73643120db","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615974.90817} device-1 | {"level":"info","message":"POST /devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4/signaling 200 23ms","method":"POST","requestID":"f02e0860-50eb-11ef-8434-2f6d198c7397","responseTime":23,"status":200,"url":"/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f02dba40-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f0322710-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f02d9330-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc2846370-868b-4318-8cc0-8a4b788427f6#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc2846370-868b-4318-8cc0-8a4b788427f6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"9f4a4967-8f2a-48dc-9290-d28a32f10fc2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615974.9156313} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"067f3ba3-4ad1-4d93-b5ad-2be15edec58b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615974.9161532} device-1 | {"level":"info","message":"GET /devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4? 200 34ms","method":"GET","requestID":"f02d9330-50eb-11ef-8434-2f6d198c7397","responseTime":34,"status":200,"url":"/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f02dba40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc? 200 34ms","method":"GET","requestID":"f02dba40-50eb-11ef-8434-2f6d198c7397","responseTime":34,"status":200,"url":"/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":947,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7691fb1-15f0-43ce-9991-d2bcbd644bbc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0e81e4a5-b154-47e9-b4d7-c923e97b1526","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615974.9194322} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"81951e22ec710b0335d4bdfef0d3bbe5","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":947,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.908537,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f0322710-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc","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":"f0335f90-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f0322710-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":948,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:14Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f0322710-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc/signaling 200 13ms","method":"POST","requestID":"f0322710-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F754f5b5b-ab8a-4dde-85c5-ad0e788111e4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d3b4a5b8-7fa3-47a0-9fde-958282074319","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615974.9265714} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":948,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.4205,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f0335f90-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4","object_type":"device","rebac_allow":false,"scope_allow":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":"f0335f90-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/c2846370-868b-4318-8cc0-8a4b788427f6","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"81951e22ec710b0335d4bdfef0d3bbe5"} gateway-1 | {"time_local":"02/Aug/2024:16:26:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.173","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"81951e22ec710b0335d4bdfef0d3bbe5"} experiment-1 | {"level":"info","message":"POST /experiments? 201 166ms","method":"POST","requestID":"81951e22ec710b0335d4bdfef0d3bbe5","responseTime":166,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f0335f90-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4/signaling 200 10ms","method":"POST","requestID":"f0335f90-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f0358270-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NH0.cLync5Od01J75UZpxaRhsyb2Qg6ra5As7CoDkc1_Saw","level":"info","message":"auth send jwt","requestID":"656172306008e58ea7c94a4a92eab76d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"656172306008e58ea7c94a4a92eab76d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"656172306008e58ea7c94a4a92eab76d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":949,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":950,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7691fb1-15f0-43ce-9991-d2bcbd644bbc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"99853af7-98ec-4cea-b2f2-4152284f8ea6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615974.9408839} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":949,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.443663,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":950,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.086282,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f0358270-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc","object_type":"device","rebac_allow":false,"scope_allow":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":"f0358270-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"656172306008e58ea7c94a4a92eab76d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615974,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NH0.cLync5Od01J75UZpxaRhsyb2Qg6ra5As7CoDkc1_Saw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"656172306008e58ea7c94a4a92eab76d","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f0358270-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc/signaling 200 11ms","method":"POST","requestID":"f0358270-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc/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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F754f5b5b-ab8a-4dde-85c5-ad0e788111e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F754f5b5b-ab8a-4dde-85c5-ad0e788111e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:12.525799739Z"}]},"request_id":"1265434f-486b-40d4-b0eb-8ffb2ba60507","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615974.9475017} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2846370-868b-4318-8cc0-8a4b788427f6"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"81951e22ec710b0335d4bdfef0d3bbe5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"656172306008e58ea7c94a4a92eab76d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f037a550-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f037f370-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"656172306008e58ea7c94a4a92eab76d"} gateway-1 | {"time_local":"02/Aug/2024:16:26:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"656172306008e58ea7c94a4a92eab76d"} device-1 | {"level":"info","message":"GET /devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4? 200 16ms","method":"GET","requestID":"656172306008e58ea7c94a4a92eab76d","responseTime":16,"status":200,"url":"/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":951,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":951,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.890065,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":952,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f037a550-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615974,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NH0.cLync5Od01J75UZpxaRhsyb2Qg6ra5As7CoDkc1_Saw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f037a550-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":952,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.887133,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f037f370-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615974,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NH0.cLync5Od01J75UZpxaRhsyb2Qg6ra5As7CoDkc1_Saw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f037f370-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NH0.cLync5Od01J75UZpxaRhsyb2Qg6ra5As7CoDkc1_Saw","level":"info","message":"auth send jwt","requestID":"42d25ea405eb4c4ae8f45540d1bac967"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"42d25ea405eb4c4ae8f45540d1bac967","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F754f5b5b-ab8a-4dde-85c5-ad0e788111e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F754f5b5b-ab8a-4dde-85c5-ad0e788111e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:12.525799739Z"}]},"request_id":"9962a077-a1c9-4008-9f87-4033c31c2d03","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615974.9594865} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"42d25ea405eb4c4ae8f45540d1bac967"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f037a550-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7691fb1-15f0-43ce-9991-d2bcbd644bbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7691fb1-15f0-43ce-9991-d2bcbd644bbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:12.566779809Z"}]},"request_id":"becf8588-7439-45e1-8831-1be7ab1bde9e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615974.9605565} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f037f370-50eb-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":953,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":953,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.890988,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"42d25ea405eb4c4ae8f45540d1bac967","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615974,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NH0.cLync5Od01J75UZpxaRhsyb2Qg6ra5As7CoDkc1_Saw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"42d25ea405eb4c4ae8f45540d1bac967","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f037a550-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4? 200 16ms","method":"GET","requestID":"f037a550-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f037f370-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc? 200 15ms","method":"GET","requestID":"f037f370-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2846370-868b-4318-8cc0-8a4b788427f6"},"level":"info","message":"Building connection plan","requestID":"81951e22ec710b0335d4bdfef0d3bbe5"} 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":"ec6877f6-77f1-4738-86f5-1feb52998be0"},{"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":"5c98b3b4-1294-4012-85c1-9a7453a57b86"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"16d11f8d-06fd-4ac6-8b24-a6ee92589b27"}]},"level":"info","message":"Built pairwise service configurations","requestID":"81951e22ec710b0335d4bdfef0d3bbe5"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"f03a8b80-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"f03a8b80-50eb-11ef-a432-47ab85bb6d58"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7691fb1-15f0-43ce-9991-d2bcbd644bbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7691fb1-15f0-43ce-9991-d2bcbd644bbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:12.566779809Z"}]},"request_id":"bc83cb8a-5019-41f8-baa6-2acd750de5d5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615974.9693873} forwarding-1 | {"level":"info","message":"POST /rooms 201 2ms","method":"POST","requestID":"f03a8b80-50eb-11ef-a432-47ab85bb6d58","responseTime":2,"status":201,"url":"/rooms"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"42d25ea405eb4c4ae8f45540d1bac967","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/9fef2e49-b0d9-4ffb-af51-123a62a7c2ca?id=d8587f95-8d45-474f-8dfc-71b37f4f3b5a","ws://localhost/rooms/9fef2e49-b0d9-4ffb-af51-123a62a7c2ca?id=8b76705e-d886-47ce-877e-a47145282e14"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"81951e22ec710b0335d4bdfef0d3bbe5"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f03b27c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"42d25ea405eb4c4ae8f45540d1bac967"} gateway-1 | {"time_local":"02/Aug/2024:16:26:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"42d25ea405eb4c4ae8f45540d1bac967"} device-1 | {"level":"info","message":"GET /devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc? 200 14ms","method":"GET","requestID":"42d25ea405eb4c4ae8f45540d1bac967","responseTime":14,"status":200,"url":"/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":954,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":954,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.907827,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f03b27c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615974,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NH0.cLync5Od01J75UZpxaRhsyb2Qg6ra5As7CoDkc1_Saw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f03b27c0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"364ca2e9-6114-4a4b-a5e3-78e3c2bd3243","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615974.9838035} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"63441799-d7e6-4e0a-9ed2-19f1a3123b66","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615974.9841242} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f03b27c0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f03b27c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f03b27c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/0895d3f5-e80e-4983-8842-f4a933c6835c'","requestID":"f03b27c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/0895d3f5-e80e-4983-8842-f4a933c6835c'","requestID":"f03b27c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f03b27c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"f03b27c0-50eb-11ef-8434-2f6d198c7397","responseTime":25,"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":"f03b27c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/0895d3f5-e80e-4983-8842-f4a933c6835c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0895d3f5-e80e-4983-8842-f4a933c6835c","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f04057e0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8587f95-8d45-474f-8dfc-71b37f4f3b5a\" in room \"http://localhost/rooms/9fef2e49-b0d9-4ffb-af51-123a62a7c2ca\"","requestID":"f04057e0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f04057e0-50eb-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6797a934b77aa34fb95155fbda8607e9","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":"6797a934b77aa34fb95155fbda8607e9","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f040cd10-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8b76705e-d886-47ce-877e-a47145282e14\" in room \"http://localhost/rooms/9fef2e49-b0d9-4ffb-af51-123a62a7c2ca\"","requestID":"f040cd10-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f040cd10-50eb-11ef-a432-47ab85bb6d58"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/0895d3f5-e80e-4983-8842-f4a933c6835c"}}},"level":"info","message":"received a callback","requestID":"6797a934b77aa34fb95155fbda8607e9"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8587f95-8d45-474f-8dfc-71b37f4f3b5a\" in room \"http://localhost/rooms/9fef2e49-b0d9-4ffb-af51-123a62a7c2ca\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8587f95-8d45-474f-8dfc-71b37f4f3b5a\" in room \"http://localhost/rooms/9fef2e49-b0d9-4ffb-af51-123a62a7c2ca\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d8587f95-8d45-474f-8dfc-71b37f4f3b5a\" in room \"http://localhost/rooms/9fef2e49-b0d9-4ffb-af51-123a62a7c2ca\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d8587f95-8d45-474f-8dfc-71b37f4f3b5a\" in room \"http://localhost/rooms/9fef2e49-b0d9-4ffb-af51-123a62a7c2ca\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/0895d3f5-e80e-4983-8842-f4a933c6835c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0895d3f5-e80e-4983-8842-f4a933c6835c","statusDeviceA":"connected","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"77a376df54fdf1f6ace76bdc4e0e3bd7","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":"77a376df54fdf1f6ace76bdc4e0e3bd7","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4"}],"status":"new","type":"websocket","url":"http://localhost/peerconnections/0895d3f5-e80e-4983-8842-f4a933c6835c"}}},"level":"info","message":"received a callback","requestID":"77a376df54fdf1f6ace76bdc4e0e3bd7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 14ms","method":"POST","requestID":"6797a934b77aa34fb95155fbda8607e9","responseTime":14,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:15 +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.018","http_referrer":"","http_user_agent":"node-fetch","requestID":"6797a934b77aa34fb95155fbda8607e9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"77a376df54fdf1f6ace76bdc4e0e3bd7","responseTime":8,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/0895d3f5-e80e-4983-8842-f4a933c6835c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0895d3f5-e80e-4983-8842-f4a933c6835c","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"02/Aug/2024:16:26:15 +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":"77a376df54fdf1f6ace76bdc4e0e3bd7"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f3e6062b1f1973662c6bb60994fe19f6","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":"f3e6062b1f1973662c6bb60994fe19f6","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/0895d3f5-e80e-4983-8842-f4a933c6835c"}}},"level":"info","message":"received a callback","requestID":"f3e6062b1f1973662c6bb60994fe19f6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2846370-868b-4318-8cc0-8a4b788427f6"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"81951e22ec710b0335d4bdfef0d3bbe5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f046c080-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/0895d3f5-e80e-4983-8842-f4a933c6835c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0895d3f5-e80e-4983-8842-f4a933c6835c","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":955,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:15Z"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 17ms","method":"POST","requestID":"f3e6062b1f1973662c6bb60994fe19f6","responseTime":17,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:15 +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.020","http_referrer":"","http_user_agent":"node-fetch","requestID":"f3e6062b1f1973662c6bb60994fe19f6"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F754f5b5b-ab8a-4dde-85c5-ad0e788111e4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"12cfa5a9-ed1a-4e95-a564-054c8457303d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615975.0526552} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6ffa4f298b74b154479e7529d148c3dc","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":"6ffa4f298b74b154479e7529d148c3dc","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":955,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.714762,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f046c080-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4","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 | {"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/0895d3f5-e80e-4983-8842-f4a933c6835c"}}},"level":"info","message":"received a callback","requestID":"6ffa4f298b74b154479e7529d148c3dc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f046c080-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"f0484720-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":956,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:15Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f046c080-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4/signaling 200 14ms","method":"POST","requestID":"f046c080-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0895d3f5-e80e-4983-8842-f4a933c6835c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"631c9eda-c776-431c-ba61-6ff3595184ca","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615975.062852} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":956,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.49862,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0895d3f5-e80e-4983-8842-f4a933c6835c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f0484720-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/0895d3f5-e80e-4983-8842-f4a933c6835c","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":"f0484720-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f0493180-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"f0484720-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":957,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:15Z"} device-1 | {"level":"info","message":"GET /peerconnections/0895d3f5-e80e-4983-8842-f4a933c6835c 200 9ms","method":"GET","requestID":"f0484720-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/peerconnections/0895d3f5-e80e-4983-8842-f4a933c6835c"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7691fb1-15f0-43ce-9991-d2bcbd644bbc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"46691e1a-94ab-4ab2-b5ff-f864e7246027","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615975.0689435} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":957,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.897597,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f0493180-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc","object_type":"device","rebac_allow":false,"scope_allow":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":"f0493180-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f0493180-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc/signaling 200 8ms","method":"POST","requestID":"f0493180-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 29ms","method":"POST","requestID":"6ffa4f298b74b154479e7529d148c3dc","responseTime":29,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:15 +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":"6ffa4f298b74b154479e7529d148c3dc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f04c17b0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":958,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7691fb1-15f0-43ce-9991-d2bcbd644bbc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9834cdcb-f3e2-4e06-ba15-94caf92c312c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615975.0878828} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":958,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.405258,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f04c17b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc","object_type":"device","rebac_allow":false,"scope_allow":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":"f04c17b0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f04c17b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc/signaling 200 8ms","method":"POST","requestID":"f04c17b0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f04d9e50-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":959,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F754f5b5b-ab8a-4dde-85c5-ad0e788111e4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"31db5348-d51f-4cf3-82f1-7aeb977af33c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615975.09669} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":959,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.25346,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f04d9e50-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4","object_type":"device","rebac_allow":false,"scope_allow":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":"f04d9e50-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f04d9e50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4/signaling 200 7ms","method":"POST","requestID":"f04d9e50-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NX0.cPaEe18tGQg-ZLvNPD_0QJyWWKobQP74y6lztI9Nm-I","level":"info","message":"auth send jwt","requestID":"a17c549e9dee6ca4472ae3bef06d83ca"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a17c549e9dee6ca4472ae3bef06d83ca","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c2846370-868b-4318-8cc0-8a4b788427f6","requestID":"a17c549e9dee6ca4472ae3bef06d83ca"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":960,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":960,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.737619,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c2846370-868b-4318-8cc0-8a4b788427f6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a17c549e9dee6ca4472ae3bef06d83ca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/c2846370-868b-4318-8cc0-8a4b788427f6","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615975,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NX0.cPaEe18tGQg-ZLvNPD_0QJyWWKobQP74y6lztI9Nm-I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a17c549e9dee6ca4472ae3bef06d83ca","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c2846370-868b-4318-8cc0-8a4b788427f6","requestID":"a17c549e9dee6ca4472ae3bef06d83ca"} experiment-1 | {"level":"info","message":"GET /experiments/c2846370-868b-4318-8cc0-8a4b788427f6 200 11ms","method":"GET","requestID":"a17c549e9dee6ca4472ae3bef06d83ca","responseTime":11,"status":200,"url":"/experiments/c2846370-868b-4318-8cc0-8a4b788427f6"} gateway-1 | {"time_local":"02/Aug/2024:16:26:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c2846370-868b-4318-8cc0-8a4b788427f6 HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a17c549e9dee6ca4472ae3bef06d83ca"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NX0.cPaEe18tGQg-ZLvNPD_0QJyWWKobQP74y6lztI9Nm-I","level":"info","message":"auth send jwt","requestID":"a019b2974eeaed27309948f0ede83b32"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a019b2974eeaed27309948f0ede83b32","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/c2846370-868b-4318-8cc0-8a4b788427f6","requestID":"a019b2974eeaed27309948f0ede83b32"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":961,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":961,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.741996,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c2846370-868b-4318-8cc0-8a4b788427f6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a019b2974eeaed27309948f0ede83b32","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/c2846370-868b-4318-8cc0-8a4b788427f6","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615975,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NX0.cPaEe18tGQg-ZLvNPD_0QJyWWKobQP74y6lztI9Nm-I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a019b2974eeaed27309948f0ede83b32","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2846370-868b-4318-8cc0-8a4b788427f6"},"level":"info","message":"Attempting to finish experiment","requestID":"a019b2974eeaed27309948f0ede83b32"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"f0556680-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":962,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":962,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.026837,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0895d3f5-e80e-4983-8842-f4a933c6835c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f0556680-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/0895d3f5-e80e-4983-8842-f4a933c6835c","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615975,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NX0.cPaEe18tGQg-ZLvNPD_0QJyWWKobQP74y6lztI9Nm-I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f0556680-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:26:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/9fef2e49-b0d9-4ffb-af51-123a62a7c2ca?id=d8587f95-8d45-474f-8dfc-71b37f4f3b5a HTTP/1.1","status": "101","body_bytes_sent":"436","request_time":"0.150","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"67eb6910092e7d029dc8453d6abf15fc"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"d8587f95-8d45-474f-8dfc-71b37f4f3b5a\" in room \"http://localhost/rooms/9fef2e49-b0d9-4ffb-af51-123a62a7c2ca\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"d8587f95-8d45-474f-8dfc-71b37f4f3b5a\" from room \"http://localhost/rooms/9fef2e49-b0d9-4ffb-af51-123a62a7c2ca\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/0895d3f5-e80e-4983-8842-f4a933c6835c","device":"754f5b5b-ab8a-4dde-85c5-ad0e788111e4","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/0895d3f5-e80e-4983-8842-f4a933c6835c' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/0895d3f5-e80e-4983-8842-f4a933c6835c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0895d3f5-e80e-4983-8842-f4a933c6835c","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"02/Aug/2024:16:26:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/9fef2e49-b0d9-4ffb-af51-123a62a7c2ca?id=8b76705e-d886-47ce-877e-a47145282e14 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.148","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":"dc4c78d9a93b046ae289b98ee9518010"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"8b76705e-d886-47ce-877e-a47145282e14\" in room \"http://localhost/rooms/9fef2e49-b0d9-4ffb-af51-123a62a7c2ca\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"8b76705e-d886-47ce-877e-a47145282e14\" from room \"http://localhost/rooms/9fef2e49-b0d9-4ffb-af51-123a62a7c2ca\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"268fab9f927c5db8ea2e1c6bb2545945","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":"268fab9f927c5db8ea2e1c6bb2545945","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0895d3f5-e80e-4983-8842-f4a933c6835c': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0895d3f5-e80e-4983-8842-f4a933c6835c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"3b3dd419-6060-4a73-98c5-90be172638cc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615975.160918} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6f9d1a7b2f53f40bf24f4a48baaf3551","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/0895d3f5-e80e-4983-8842-f4a933c6835c"}}},"level":"info","message":"received a callback","requestID":"268fab9f927c5db8ea2e1c6bb2545945"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae1aaeaf-7477-48ba-9a0b-8c11dc44bb41","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615975.1612587} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6f9d1a7b2f53f40bf24f4a48baaf3551","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/0895d3f5-e80e-4983-8842-f4a933c6835c"}}},"level":"info","message":"received a callback","requestID":"6f9d1a7b2f53f40bf24f4a48baaf3551"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"f0556680-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"0895d3f5-e80e-4983-8842-f4a933c6835c","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"f0556680-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/0895d3f5-e80e-4983-8842-f4a933c6835c 204 37ms","method":"DELETE","requestID":"f0556680-50eb-11ef-8434-2f6d198c7397","responseTime":37,"status":204,"url":"/peerconnections/0895d3f5-e80e-4983-8842-f4a933c6835c"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c2846370-868b-4318-8cc0-8a4b788427f6"},"level":"info","message":"Successfully finished experiment","requestID":"a019b2974eeaed27309948f0ede83b32"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f05d7cd0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":963,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7691fb1-15f0-43ce-9991-d2bcbd644bbc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1650394e-76f7-4ee3-a5b0-068b91146d3e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615975.2017457} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":963,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.685893,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f05d7cd0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc","object_type":"device","rebac_allow":false,"scope_allow":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":"f05d7cd0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f05d7cd0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc/signaling 200 9ms","method":"POST","requestID":"f05d7cd0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/c7691fb1-15f0-43ce-9991-d2bcbd644bbc/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f05f2a80-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc2846370-868b-4318-8cc0-8a4b788427f6': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc2846370-868b-4318-8cc0-8a4b788427f6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"41158ecf-6563-4433-a570-8a58993b336b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615975.209482} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c7b39500-92d5-41ff-9a28-643b0d04ca1f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615975.2097945} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"a019b2974eeaed27309948f0ede83b32","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":964,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F754f5b5b-ab8a-4dde-85c5-ad0e788111e4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"db90fa94-8dce-4e0b-b338-f74675158750","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615975.2150676} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":964,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.021149,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f05f2a80-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4","object_type":"device","rebac_allow":false,"scope_allow":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":"f05f2a80-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f05f2a80-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4/signaling 200 13ms","method":"POST","requestID":"f05f2a80-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/754f5b5b-ab8a-4dde-85c5-ad0e788111e4/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/c2846370-868b-4318-8cc0-8a4b788427f6","requestID":"a019b2974eeaed27309948f0ede83b32"} gateway-1 | {"time_local":"02/Aug/2024:16:26:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/c2846370-868b-4318-8cc0-8a4b788427f6 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a019b2974eeaed27309948f0ede83b32"} gateway-1 | {"time_local":"02/Aug/2024:16:26:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1782","request_time":"2.136","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"6edc61abe7d16862697dc71de95f054f"} experiment-1 | {"level":"info","message":"DELETE /experiments/c2846370-868b-4318-8cc0-8a4b788427f6 204 138ms","method":"DELETE","requestID":"a019b2974eeaed27309948f0ede83b32","responseTime":138,"status":204,"url":"/experiments/c2846370-868b-4318-8cc0-8a4b788427f6"} gateway-1 | {"time_local":"02/Aug/2024:16:26:15 +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":"268fab9f927c5db8ea2e1c6bb2545945"} gateway-1 | {"time_local":"02/Aug/2024:16:26:15 +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":"6f9d1a7b2f53f40bf24f4a48baaf3551"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NX0.cPaEe18tGQg-ZLvNPD_0QJyWWKobQP74y6lztI9Nm-I","level":"info","message":"auth send jwt","requestID":"4a006496b8d663edad10a9c396b66dc2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4a006496b8d663edad10a9c396b66dc2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4a006496b8d663edad10a9c396b66dc2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 116ms","method":"POST","requestID":"268fab9f927c5db8ea2e1c6bb2545945","responseTime":116,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 116ms","method":"POST","requestID":"6f9d1a7b2f53f40bf24f4a48baaf3551","responseTime":116,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2107","request_time":"0.664","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":"75c801f52e8910c89066b227b49a8b1d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":965,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":965,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.851687,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"4a006496b8d663edad10a9c396b66dc2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615975,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NX0.cPaEe18tGQg-ZLvNPD_0QJyWWKobQP74y6lztI9Nm-I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4a006496b8d663edad10a9c396b66dc2","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/c7691fb1-15f0-43ce-9991-d2bcbd644bbc' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2369e584-b256-441c-b509-c19cf8532727","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615975.3117447} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4a006496b8d663edad10a9c396b66dc2","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/754f5b5b-ab8a-4dde-85c5-ad0e788111e4' 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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"03c5d819-bc89-446d-986d-de184870743b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615975.3169322} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4a006496b8d663edad10a9c396b66dc2","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"adddd2e3-fb4e-4a22-b47c-8d3154ba8209","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615975.3261583} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cc484d4b-c9fc-4463-9e3b-5095d0fe41e4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615975.3262873} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"4a006496b8d663edad10a9c396b66dc2","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:15.326126297Z"}]},"request_id":"d2ec883d-9b30-4036-915e-b1d02c013763","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615975.330316} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4a006496b8d663edad10a9c396b66dc2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4a006496b8d663edad10a9c396b66dc2"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"4a006496b8d663edad10a9c396b66dc2","responseTime":50,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4a006496b8d663edad10a9c396b66dc2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NX0.cPaEe18tGQg-ZLvNPD_0QJyWWKobQP74y6lztI9Nm-I","level":"info","message":"auth send jwt","requestID":"a26461a9ca7c6745d8cc805466620a64"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a26461a9ca7c6745d8cc805466620a64","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a26461a9ca7c6745d8cc805466620a64"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":966,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":966,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.769028,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a26461a9ca7c6745d8cc805466620a64","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615975,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NX0.cPaEe18tGQg-ZLvNPD_0QJyWWKobQP74y6lztI9Nm-I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a26461a9ca7c6745d8cc805466620a64","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb117c0e8-8444-4aea-a5fe-55c00cd26780","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"162615d4-131e-425d-8035-d076e3c0304c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615975.3594158} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a26461a9ca7c6745d8cc805466620a64","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f5ca61ab-e64d-48e3-9ce8-26ffbfda1218","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615975.3634632} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"a26461a9ca7c6745d8cc805466620a64","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb117c0e8-8444-4aea-a5fe-55c00cd26780","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"a0d7d400-1386-429f-9fbc-ea21c7c44dd6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615975.3746037} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"19880162-a852-4224-92c4-24a7ca6b6a4e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615975.3749166} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"a26461a9ca7c6745d8cc805466620a64","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb117c0e8-8444-4aea-a5fe-55c00cd26780","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb117c0e8-8444-4aea-a5fe-55c00cd26780","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:15.374577099Z"}]},"request_id":"3a82d19e-05d9-4c3b-af20-705df6ef6813","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615975.3784535} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a26461a9ca7c6745d8cc805466620a64","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a26461a9ca7c6745d8cc805466620a64"} gateway-1 | {"time_local":"02/Aug/2024:16:26:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a26461a9ca7c6745d8cc805466620a64"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"a26461a9ca7c6745d8cc805466620a64","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NX0.cPaEe18tGQg-ZLvNPD_0QJyWWKobQP74y6lztI9Nm-I","level":"info","message":"auth send jwt","requestID":"809e478adc24b2ed65883481acf560ff"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"809e478adc24b2ed65883481acf560ff","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"809e478adc24b2ed65883481acf560ff"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":967,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":967,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.64267,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"809e478adc24b2ed65883481acf560ff","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615975,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NX0.cPaEe18tGQg-ZLvNPD_0QJyWWKobQP74y6lztI9Nm-I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"809e478adc24b2ed65883481acf560ff","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb117c0e8-8444-4aea-a5fe-55c00cd26780","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb117c0e8-8444-4aea-a5fe-55c00cd26780","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:15.374577099Z"}]},"request_id":"4e9e2518-d6b5-49b8-8016-f1fc04442f8a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615975.895007} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"809e478adc24b2ed65883481acf560ff","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"66614ac1-365b-45bf-9abb-af3d33e9a0f5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615975.900556} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"809e478adc24b2ed65883481acf560ff","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb117c0e8-8444-4aea-a5fe-55c00cd26780","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb117c0e8-8444-4aea-a5fe-55c00cd26780","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:15.374577099Z"}]},"request_id":"18a30ec3-b798-46f6-9512-c4b2aeaebcef","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615975.9140399} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"809e478adc24b2ed65883481acf560ff","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"809e478adc24b2ed65883481acf560ff"} gateway-1 | {"time_local":"02/Aug/2024:16:26:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b117c0e8-8444-4aea-a5fe-55c00cd26780 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.038","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"809e478adc24b2ed65883481acf560ff"} device-1 | {"level":"info","message":"PATCH /devices/b117c0e8-8444-4aea-a5fe-55c00cd26780 200 33ms","method":"PATCH","requestID":"809e478adc24b2ed65883481acf560ff","responseTime":33,"status":200,"url":"/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NX0.cPaEe18tGQg-ZLvNPD_0QJyWWKobQP74y6lztI9Nm-I","level":"info","message":"auth send jwt","requestID":"f5d1cd83dc08437bc1cacc08fd27d0f8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f5d1cd83dc08437bc1cacc08fd27d0f8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f5d1cd83dc08437bc1cacc08fd27d0f8"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":968,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":968,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.142947,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f5d1cd83dc08437bc1cacc08fd27d0f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615975,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3NX0.cPaEe18tGQg-ZLvNPD_0QJyWWKobQP74y6lztI9Nm-I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f5d1cd83dc08437bc1cacc08fd27d0f8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f5d1cd83dc08437bc1cacc08fd27d0f8"} gateway-1 | {"time_local":"02/Aug/2024:16:26:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b117c0e8-8444-4aea-a5fe-55c00cd26780/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"f5d1cd83dc08437bc1cacc08fd27d0f8"} device-1 | {"level":"info","message":"POST /devices/b117c0e8-8444-4aea-a5fe-55c00cd26780/websocket 200 17ms","method":"POST","requestID":"f5d1cd83dc08437bc1cacc08fd27d0f8","responseTime":17,"status":200,"url":"/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1b541d98692bcc964ed6bfe54495ee3f","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":"1b541d98692bcc964ed6bfe54495ee3f","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23/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":"1b541d98692bcc964ed6bfe54495ee3f"} device-1 | {"level":"info","message":"OPTIONS /devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23/websocket 200 1ms","method":"OPTIONS","requestID":"1b541d98692bcc964ed6bfe54495ee3f","responseTime":1,"status":200,"url":"/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw","level":"info","message":"auth send jwt","requestID":"8654ddb185a903bd8d6701d5b3bd95e5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8654ddb185a903bd8d6701d5b3bd95e5","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8654ddb185a903bd8d6701d5b3bd95e5"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":969,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":969,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.736069,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"8654ddb185a903bd8d6701d5b3bd95e5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615977,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8654ddb185a903bd8d6701d5b3bd95e5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8654ddb185a903bd8d6701d5b3bd95e5"} device-1 | {"level":"info","message":"POST /devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23/websocket 200 25ms","method":"POST","requestID":"8654ddb185a903bd8d6701d5b3bd95e5","responseTime":25,"status":200,"url":"/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:26:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.032","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":"8654ddb185a903bd8d6701d5b3bd95e5"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"74a5a1db595609f772ae46d3208a44b0","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":"74a5a1db595609f772ae46d3208a44b0","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"74a5a1db595609f772ae46d3208a44b0"} device-1 | {"level":"info","message":"OPTIONS /devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23? 200 1ms","method":"OPTIONS","requestID":"74a5a1db595609f772ae46d3208a44b0","responseTime":1,"status":200,"url":"/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw","level":"info","message":"auth send jwt","requestID":"0f89fa36542dc4e909f2f6c229f12807"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0f89fa36542dc4e909f2f6c229f12807","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"0f89fa36542dc4e909f2f6c229f12807"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":970,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":970,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.299843,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0f89fa36542dc4e909f2f6c229f12807","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615977,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0f89fa36542dc4e909f2f6c229f12807","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:15.326126297Z"}]},"request_id":"e394be79-2c89-48e5-b204-134e2d41521b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.4857585} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0f89fa36542dc4e909f2f6c229f12807","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8a5d8deb-fd1a-4e51-8203-db40d730d697","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.4929655} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"0f89fa36542dc4e909f2f6c229f12807","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:15.326126297Z"}]},"request_id":"9322f43b-ba1b-4988-adaa-25aa22aead79","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.5069668} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0f89fa36542dc4e909f2f6c229f12807","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"0f89fa36542dc4e909f2f6c229f12807"} device-1 | {"level":"info","message":"PATCH /devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23? 200 38ms","method":"PATCH","requestID":"0f89fa36542dc4e909f2f6c229f12807","responseTime":38,"status":200,"url":"/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.044","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":"0f89fa36542dc4e909f2f6c229f12807"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw","level":"info","message":"auth send jwt","requestID":"d7c8a3eae3402a829f3cf10738cbd7c5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d7c8a3eae3402a829f3cf10738cbd7c5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d7c8a3eae3402a829f3cf10738cbd7c5"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":971,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":971,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.35742,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d7c8a3eae3402a829f3cf10738cbd7c5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615977,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d7c8a3eae3402a829f3cf10738cbd7c5","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:15.326126297Z"}]},"request_id":"f03fdd04-258e-4d91-be7e-f03b205f14c2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.5364246} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d7c8a3eae3402a829f3cf10738cbd7c5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d7c8a3eae3402a829f3cf10738cbd7c5"} gateway-1 | {"time_local":"02/Aug/2024:16:26:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d7c8a3eae3402a829f3cf10738cbd7c5"} device-1 | {"level":"info","message":"GET /devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23? 200 17ms","method":"GET","requestID":"d7c8a3eae3402a829f3cf10738cbd7c5","responseTime":17,"status":200,"url":"/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw","level":"info","message":"auth send jwt","requestID":"e7aff8eb23b21e94b3cf78e38338cb9b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e7aff8eb23b21e94b3cf78e38338cb9b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e7aff8eb23b21e94b3cf78e38338cb9b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":972,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":972,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.955332,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e7aff8eb23b21e94b3cf78e38338cb9b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615977,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e7aff8eb23b21e94b3cf78e38338cb9b","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb117c0e8-8444-4aea-a5fe-55c00cd26780","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb117c0e8-8444-4aea-a5fe-55c00cd26780","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:15.374577099Z"}]},"request_id":"6749bd84-857a-4fbc-b4b5-4a4a49f1bef1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.5622869} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e7aff8eb23b21e94b3cf78e38338cb9b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e7aff8eb23b21e94b3cf78e38338cb9b"} device-1 | {"level":"info","message":"GET /devices/b117c0e8-8444-4aea-a5fe-55c00cd26780? 200 18ms","method":"GET","requestID":"e7aff8eb23b21e94b3cf78e38338cb9b","responseTime":18,"status":200,"url":"/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b117c0e8-8444-4aea-a5fe-55c00cd26780? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e7aff8eb23b21e94b3cf78e38338cb9b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw","level":"info","message":"auth send jwt","requestID":"c936f176e58b237b107e818de987ff43"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c936f176e58b237b107e818de987ff43","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"c936f176e58b237b107e818de987ff43"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":973,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":973,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.27118,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c936f176e58b237b107e818de987ff43","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615977,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c936f176e58b237b107e818de987ff43","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/baeb66b7-bea8-4719-a360-628db5e2de62"},"level":"info","message":"Attempting to run experiment","requestID":"c936f176e58b237b107e818de987ff43"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/baeb66b7-bea8-4719-a360-628db5e2de62"},"level":"info","message":"Attempting to book experiment","requestID":"c936f176e58b237b107e818de987ff43"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/baeb66b7-bea8-4719-a360-628db5e2de62"},"level":"info","message":"Successfully booked experiment","requestID":"c936f176e58b237b107e818de987ff43"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f1cf0e30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f1cf5c50-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":974,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":974,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.826151,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f1cf0e30-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615977,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f1cf0e30-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":975,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":975,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.553712,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f1cf5c50-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615977,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f1cf5c50-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:15.326126297Z"}]},"request_id":"c9d95396-9136-4835-8946-0cd48da6e723","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.6331189} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"f1cf0e30-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb117c0e8-8444-4aea-a5fe-55c00cd26780","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb117c0e8-8444-4aea-a5fe-55c00cd26780","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:15.374577099Z"}]},"request_id":"07399930-8c44-4117-90ed-2061cb1bad1c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.6349177} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f1cf5c50-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f1cf0e30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23? 200 22ms","method":"GET","requestID":"f1cf0e30-50eb-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f1cf5c50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/b117c0e8-8444-4aea-a5fe-55c00cd26780? 200 21ms","method":"GET","requestID":"f1cf5c50-50eb-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/baeb66b7-bea8-4719-a360-628db5e2de62"},"level":"info","message":"Setting up experiment","requestID":"c936f176e58b237b107e818de987ff43"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/baeb66b7-bea8-4719-a360-628db5e2de62"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"c936f176e58b237b107e818de987ff43"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/baeb66b7-bea8-4719-a360-628db5e2de62"},"level":"info","message":"Successfully locked booking for experiment","requestID":"c936f176e58b237b107e818de987ff43"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/baeb66b7-bea8-4719-a360-628db5e2de62"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"c936f176e58b237b107e818de987ff43"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/baeb66b7-bea8-4719-a360-628db5e2de62"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"c936f176e58b237b107e818de987ff43"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/baeb66b7-bea8-4719-a360-628db5e2de62"},"level":"info","message":"Attempting to update booking for experiment","requestID":"c936f176e58b237b107e818de987ff43"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/baeb66b7-bea8-4719-a360-628db5e2de62"},"level":"info","message":"Successfully updated booking for experiment","requestID":"c936f176e58b237b107e818de987ff43"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/baeb66b7-bea8-4719-a360-628db5e2de62"},"level":"info","message":"Successfully set up experiment","requestID":"c936f176e58b237b107e818de987ff43"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f1da58d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f1daa6f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f1daf510-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/baeb66b7-bea8-4719-a360-628db5e2de62"},"level":"info","message":"Successfully running experiment","requestID":"c936f176e58b237b107e818de987ff43"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":976,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":976,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.925832,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":977,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f1da58d0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615977,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f1da58d0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":977,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.865259,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"client_addr":"127.0.0.1:34360","level":"info","msg":"Received request.","req_id":978,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f1daa6f0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615977,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f1daa6f0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"46510529-80e4-47ca-980a-c43447debf41","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.703267} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:15.326126297Z"}]},"request_id":"789c359d-fae6-4f83-9ced-e46a68e73c0e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.704355} authorization-1 | {"client_addr":"127.0.0.1:34360","level":"info","msg":"Sent response.","req_id":978,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.152153,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f1daf510-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","object_type":"device","rebac_allow":false,"scope_allow":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":"f1daf510-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f1da58d0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb117c0e8-8444-4aea-a5fe-55c00cd26780","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb117c0e8-8444-4aea-a5fe-55c00cd26780","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:15.374577099Z"}]},"request_id":"42148b72-b636-4408-9f97-c08e9f48db70","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.70569} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f1daa6f0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f1daf510-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23/signaling 200 16ms","method":"POST","requestID":"f1daf510-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f1da58d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23? 200 22ms","method":"GET","requestID":"f1da58d0-50eb-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f1daa6f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/b117c0e8-8444-4aea-a5fe-55c00cd26780? 200 22ms","method":"GET","requestID":"f1daa6f0-50eb-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f1de2960-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f1de9e90-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbaeb66b7-bea8-4719-a360-628db5e2de62#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbaeb66b7-bea8-4719-a360-628db5e2de62","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"a0ab4392-6f33-4437-bb4b-b966efbfb384","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.7217333} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d88fdf32-31fb-4ae5-add3-426af3bd298b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.7220764} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"c936f176e58b237b107e818de987ff43","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":979,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":979,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.211914,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":980,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb117c0e8-8444-4aea-a5fe-55c00cd26780","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ecb37955-5088-4b11-be08-7bdc2dadd320","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.7259595} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f1de2960-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780","object_type":"device","rebac_allow":false,"scope_allow":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":"f1de2960-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eef7f23b-e42b-4db0-935e-a618dd02e2a6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.731137} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":980,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.337239,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f1de2960-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f1de9e90-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","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 | {"data":{"experiment":"http://localhost/experiments/baeb66b7-bea8-4719-a360-628db5e2de62","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"c936f176e58b237b107e818de987ff43"} device-1 | {"level":"info","message":"POST /devices/b117c0e8-8444-4aea-a5fe-55c00cd26780/signaling 200 15ms","method":"POST","requestID":"f1de2960-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f1de9e90-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:26:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.165","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c936f176e58b237b107e818de987ff43"} experiment-1 | {"level":"info","message":"POST /experiments? 201 159ms","method":"POST","requestID":"c936f176e58b237b107e818de987ff43","responseTime":159,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f1de9e90-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23/signaling 200 16ms","method":"POST","requestID":"f1de9e90-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw","level":"info","message":"auth send jwt","requestID":"1b17541bbdc287838c40a4eb43d81f20"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f1e15db0-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1b17541bbdc287838c40a4eb43d81f20","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1b17541bbdc287838c40a4eb43d81f20"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":981,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":982,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb117c0e8-8444-4aea-a5fe-55c00cd26780","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4f4d04a4-82ef-4e18-b534-c942fb8fae21","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.7454221} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":982,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.197719,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1b17541bbdc287838c40a4eb43d81f20","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615977,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1b17541bbdc287838c40a4eb43d81f20","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":981,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.628563,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f1e15db0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780","object_type":"device","rebac_allow":false,"scope_allow":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":"f1e15db0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:15.326126297Z"}]},"request_id":"00b9f32f-2978-401c-91fe-07e23a2d162a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.7512882} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f1e15db0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/b117c0e8-8444-4aea-a5fe-55c00cd26780/signaling 200 13ms","method":"POST","requestID":"f1e15db0-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1b17541bbdc287838c40a4eb43d81f20","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/baeb66b7-bea8-4719-a360-628db5e2de62"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"c936f176e58b237b107e818de987ff43"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f1e3a7a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f1e3ceb0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":983,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1b17541bbdc287838c40a4eb43d81f20"} gateway-1 | {"time_local":"02/Aug/2024:16:26:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1b17541bbdc287838c40a4eb43d81f20"} device-1 | {"level":"info","message":"GET /devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23? 200 16ms","method":"GET","requestID":"1b17541bbdc287838c40a4eb43d81f20","responseTime":16,"status":200,"url":"/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23?"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":984,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":983,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.020742,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f1e3a7a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615977,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f1e3a7a0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":984,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.830913,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f1e3ceb0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615977,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f1e3ceb0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw","level":"info","message":"auth send jwt","requestID":"e6b8935be39d3d97cc212b326fb1b236"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e6b8935be39d3d97cc212b326fb1b236","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e6b8935be39d3d97cc212b326fb1b236"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:15.326126297Z"}]},"request_id":"2dcd9767-57d2-4d82-b76c-3afad7d7342d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.762309} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f1e3a7a0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb117c0e8-8444-4aea-a5fe-55c00cd26780","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb117c0e8-8444-4aea-a5fe-55c00cd26780","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:15.374577099Z"}]},"request_id":"c8115430-be4e-42f1-8f7c-cdff95a7320e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.763392} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f1e3ceb0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":985,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":985,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.914583,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e6b8935be39d3d97cc212b326fb1b236","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615977,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"e6b8935be39d3d97cc212b326fb1b236","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f1e3a7a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23? 200 21ms","method":"GET","requestID":"f1e3a7a0-50eb-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb117c0e8-8444-4aea-a5fe-55c00cd26780","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb117c0e8-8444-4aea-a5fe-55c00cd26780","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:15.374577099Z"}]},"request_id":"d07928b8-ad9c-42ef-973b-334903b8b545","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.775476} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f1e3ceb0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e6b8935be39d3d97cc212b326fb1b236","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/b117c0e8-8444-4aea-a5fe-55c00cd26780? 200 21ms","method":"GET","requestID":"f1e3ceb0-50eb-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/baeb66b7-bea8-4719-a360-628db5e2de62"},"level":"info","message":"Building connection plan","requestID":"c936f176e58b237b107e818de987ff43"} 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":"fd49f920-1431-464b-81a7-43491b746c90"},{"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":"5090be3e-51c8-48b3-99ed-af2130e242f6"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"594fd2a8-a0b6-463a-8849-745552174bd5"}]},"level":"info","message":"Built pairwise service configurations","requestID":"c936f176e58b237b107e818de987ff43"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"f1e77830-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"f1e77830-50eb-11ef-a432-47ab85bb6d58"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e6b8935be39d3d97cc212b326fb1b236"} gateway-1 | {"time_local":"02/Aug/2024:16:26:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b117c0e8-8444-4aea-a5fe-55c00cd26780? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e6b8935be39d3d97cc212b326fb1b236"} device-1 | {"level":"info","message":"GET /devices/b117c0e8-8444-4aea-a5fe-55c00cd26780? 200 19ms","method":"GET","requestID":"e6b8935be39d3d97cc212b326fb1b236","responseTime":19,"status":200,"url":"/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780?"} forwarding-1 | {"level":"info","message":"POST /rooms 201 2ms","method":"POST","requestID":"f1e77830-50eb-11ef-a432-47ab85bb6d58","responseTime":2,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/ad018573-9a5d-4ef8-aca1-140361214fa2?id=0a5d51f1-77d7-4e85-a628-bac707b8f5e4","ws://localhost/rooms/ad018573-9a5d-4ef8-aca1-140361214fa2?id=a128c948-87bd-4e57-bdc7-43c2c4a998d6"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"c936f176e58b237b107e818de987ff43"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f1e83b80-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":986,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":986,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.694831,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f1e83b80-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615977,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f1e83b80-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"f2ae892b-1ef7-4003-ba15-1c1f5142f9db","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.800431} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"72061d13-aafa-48f9-be99-685e8ccf1a6b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.800772} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f1e83b80-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f1e83b80-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f1e83b80-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6'","requestID":"f1e83b80-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6'","requestID":"f1e83b80-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f1e83b80-50eb-11ef-8434-2f6d198c7397"} 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":"f1e83b80-50eb-11ef-8434-2f6d198c7397","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":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"f1e83b80-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f1ee7d10-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a128c948-87bd-4e57-bdc7-43c2c4a998d6\" in room \"http://localhost/rooms/ad018573-9a5d-4ef8-aca1-140361214fa2\"","requestID":"f1ee7d10-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f1ee7d10-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f1eecb30-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0a5d51f1-77d7-4e85-a628-bac707b8f5e4\" in room \"http://localhost/rooms/ad018573-9a5d-4ef8-aca1-140361214fa2\"","requestID":"f1eecb30-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f1eecb30-50eb-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"58a6b3303f1476b22a2dc094be41d175","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":"58a6b3303f1476b22a2dc094be41d175","responseTime":0,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a128c948-87bd-4e57-bdc7-43c2c4a998d6\" in room \"http://localhost/rooms/ad018573-9a5d-4ef8-aca1-140361214fa2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a128c948-87bd-4e57-bdc7-43c2c4a998d6\" in room \"http://localhost/rooms/ad018573-9a5d-4ef8-aca1-140361214fa2\""} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6"}}},"level":"info","message":"received a callback","requestID":"58a6b3303f1476b22a2dc094be41d175"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a128c948-87bd-4e57-bdc7-43c2c4a998d6\" in room \"http://localhost/rooms/ad018573-9a5d-4ef8-aca1-140361214fa2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a128c948-87bd-4e57-bdc7-43c2c4a998d6\" in room \"http://localhost/rooms/ad018573-9a5d-4ef8-aca1-140361214fa2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a128c948-87bd-4e57-bdc7-43c2c4a998d6\" in room \"http://localhost/rooms/ad018573-9a5d-4ef8-aca1-140361214fa2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a128c948-87bd-4e57-bdc7-43c2c4a998d6\" in room \"http://localhost/rooms/ad018573-9a5d-4ef8-aca1-140361214fa2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a128c948-87bd-4e57-bdc7-43c2c4a998d6\" in room \"http://localhost/rooms/ad018573-9a5d-4ef8-aca1-140361214fa2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a128c948-87bd-4e57-bdc7-43c2c4a998d6\" in room \"http://localhost/rooms/ad018573-9a5d-4ef8-aca1-140361214fa2\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"58a6b3303f1476b22a2dc094be41d175","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:17 +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":"58a6b3303f1476b22a2dc094be41d175"} device-1 | {"data":{"peerconnection":"1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/baeb66b7-bea8-4719-a360-628db5e2de62"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"c936f176e58b237b107e818de987ff43"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f1f2e9e0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":987,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} device-1 | {"data":{"peerconnection":"1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"39cf9040-859e-48ed-8a80-6c97aef84d80","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.8586364} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":987,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.490737,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f1f2e9e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","object_type":"device","rebac_allow":false,"scope_allow":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":"f1f2e9e0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f1f2e9e0-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ce76e0da00d65f22d899f85b100901de","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)"} device-1 | {"level":"info","message":"POST /devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23/signaling 200 17ms","method":"POST","requestID":"f1f2e9e0-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ce76e0da00d65f22d899f85b100901de","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f1f5d010-50eb-11ef-8434-2f6d198c7397"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6"}}},"level":"info","message":"received a callback","requestID":"ce76e0da00d65f22d899f85b100901de"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":988,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb117c0e8-8444-4aea-a5fe-55c00cd26780","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b5d4ef2b-afb8-4e05-8575-a8e4c7e48dc7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.8773215} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":988,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.227882,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f1f5d010-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780","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":"getPeerconnectionsByPeerconnectionId called","requestID":"f1f69360-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f1f5d010-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":989,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e290e2b5-bed4-480a-a22f-b3043fc578d0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.8825228} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":989,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.247868,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f1f69360-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6","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":"f1f69360-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f1f5d010-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/b117c0e8-8444-4aea-a5fe-55c00cd26780/signaling 200 12ms","method":"POST","requestID":"f1f5d010-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780/signaling"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"f1f69360-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6 200 8ms","method":"GET","requestID":"f1f69360-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/peerconnections/1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 28ms","method":"POST","requestID":"ce76e0da00d65f22d899f85b100901de","responseTime":28,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:17 +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":"ce76e0da00d65f22d899f85b100901de"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f1fa3ce0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":990,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"53b32d19-f032-413e-bcd2-0fac49730cd4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.9082303} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":990,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.02653,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f1fa3ce0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","object_type":"device","rebac_allow":false,"scope_allow":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":"f1fa3ce0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f1fa3ce0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23/signaling 200 10ms","method":"POST","requestID":"f1fa3ce0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f1fc11a0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":991,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb117c0e8-8444-4aea-a5fe-55c00cd26780","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a1782cb2-d160-4950-84ec-d694e0412c7d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.9189723} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":991,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.822286,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f1fc11a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780","object_type":"device","rebac_allow":false,"scope_allow":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":"f1fc11a0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f1fc11a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/b117c0e8-8444-4aea-a5fe-55c00cd26780/signaling 200 9ms","method":"POST","requestID":"f1fc11a0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw","level":"info","message":"auth send jwt","requestID":"c4d72defe432615d162e212891b64915"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c4d72defe432615d162e212891b64915","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/baeb66b7-bea8-4719-a360-628db5e2de62","requestID":"c4d72defe432615d162e212891b64915"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":992,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":992,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.990587,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/baeb66b7-bea8-4719-a360-628db5e2de62","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c4d72defe432615d162e212891b64915","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/baeb66b7-bea8-4719-a360-628db5e2de62","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615977,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c4d72defe432615d162e212891b64915","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/baeb66b7-bea8-4719-a360-628db5e2de62","requestID":"c4d72defe432615d162e212891b64915"} experiment-1 | {"level":"info","message":"GET /experiments/baeb66b7-bea8-4719-a360-628db5e2de62 200 10ms","method":"GET","requestID":"c4d72defe432615d162e212891b64915","responseTime":10,"status":200,"url":"/experiments/baeb66b7-bea8-4719-a360-628db5e2de62"} gateway-1 | {"time_local":"02/Aug/2024:16:26:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/baeb66b7-bea8-4719-a360-628db5e2de62 HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c4d72defe432615d162e212891b64915"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw","level":"info","message":"auth send jwt","requestID":"84d583cf2d7cb8686c1e2269dda04105"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"84d583cf2d7cb8686c1e2269dda04105","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/baeb66b7-bea8-4719-a360-628db5e2de62","requestID":"84d583cf2d7cb8686c1e2269dda04105"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":993,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":993,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.894217,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/baeb66b7-bea8-4719-a360-628db5e2de62","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"84d583cf2d7cb8686c1e2269dda04105","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/baeb66b7-bea8-4719-a360-628db5e2de62","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615977,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"84d583cf2d7cb8686c1e2269dda04105","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/baeb66b7-bea8-4719-a360-628db5e2de62"},"level":"info","message":"Attempting to finish experiment","requestID":"84d583cf2d7cb8686c1e2269dda04105"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"f2033d90-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":994,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":994,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.75276,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:17Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f2033d90-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615977,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3N30.T6HoG-Tb6zr8nLbIPkWyT9ILA3C3BWBrx29JEgMdQGw"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"f2033d90-50eb-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:26:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/ad018573-9a5d-4ef8-aca1-140361214fa2?id=a128c948-87bd-4e57-bdc7-43c2c4a998d6 HTTP/1.1","status": "101","body_bytes_sent":"872","request_time":"0.150","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"3e3f034e25885f7412cd517f2a175225"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"a128c948-87bd-4e57-bdc7-43c2c4a998d6\" in room \"http://localhost/rooms/ad018573-9a5d-4ef8-aca1-140361214fa2\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"a128c948-87bd-4e57-bdc7-43c2c4a998d6\" from room \"http://localhost/rooms/ad018573-9a5d-4ef8-aca1-140361214fa2\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6","device":"8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"02/Aug/2024:16:26:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/ad018573-9a5d-4ef8-aca1-140361214fa2?id=0a5d51f1-77d7-4e85-a628-bac707b8f5e4 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.150","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":"0548d8e28e7abcb23dbd1e767d5fb410"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"0a5d51f1-77d7-4e85-a628-bac707b8f5e4\" in room \"http://localhost/rooms/ad018573-9a5d-4ef8-aca1-140361214fa2\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"0a5d51f1-77d7-4e85-a628-bac707b8f5e4\" from room \"http://localhost/rooms/ad018573-9a5d-4ef8-aca1-140361214fa2\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"702752d0-f2d2-4a00-9ba6-7cdefd3284f4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.978969} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9929fba6-c1f7-4841-b0f2-967b996a78e8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615977.9791608} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7fc44610c7b314346006986e78424edc","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":"7fc44610c7b314346006986e78424edc","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"187384f4cc860d4a701876ca44371128","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 6ms","method":"POST","requestID":"f2033d90-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"187384f4cc860d4a701876ca44371128","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6"}}},"level":"info","message":"received a callback","requestID":"7fc44610c7b314346006986e78424edc"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6"}}},"level":"info","message":"received a callback","requestID":"187384f4cc860d4a701876ca44371128"} device-1 | {"data":{"peerconnection":"1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"f2033d90-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6 204 40ms","method":"DELETE","requestID":"f2033d90-50eb-11ef-8434-2f6d198c7397","responseTime":40,"status":204,"url":"/peerconnections/1fe6fb5c-1a2a-484d-9e86-7f01cf8b12e6"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/baeb66b7-bea8-4719-a360-628db5e2de62"},"level":"info","message":"Successfully finished experiment","requestID":"84d583cf2d7cb8686c1e2269dda04105"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f20b7af0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":995,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:18Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"92b265a9-ef15-4010-bdfe-22514766e51d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615978.0205781} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":995,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.74302,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f20b7af0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23","object_type":"device","rebac_allow":false,"scope_allow":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":"f20b7af0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f20b7af0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23/signaling 200 9ms","method":"POST","requestID":"f20b7af0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbaeb66b7-bea8-4719-a360-628db5e2de62': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbaeb66b7-bea8-4719-a360-628db5e2de62","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"b99ee949-0b89-49f6-a7ac-788a4e6fc612","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615978.0268378} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ef757ce6-d9fe-4cdd-94f9-78038ffdfa88","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615978.0271437} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f20d4fb0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"84d583cf2d7cb8686c1e2269dda04105","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":996,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:18Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb117c0e8-8444-4aea-a5fe-55c00cd26780","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d9814065-e86e-4783-ab39-15617f196555","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615978.0320058} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":996,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.660536,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f20d4fb0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780","object_type":"device","rebac_allow":false,"scope_allow":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":"f20d4fb0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f20d4fb0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/b117c0e8-8444-4aea-a5fe-55c00cd26780/signaling 200 10ms","method":"POST","requestID":"f20d4fb0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/b117c0e8-8444-4aea-a5fe-55c00cd26780/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/baeb66b7-bea8-4719-a360-628db5e2de62","requestID":"84d583cf2d7cb8686c1e2269dda04105"} gateway-1 | {"time_local":"02/Aug/2024:16:26:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/baeb66b7-bea8-4719-a360-628db5e2de62 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":"84d583cf2d7cb8686c1e2269dda04105"} experiment-1 | {"level":"info","message":"DELETE /experiments/baeb66b7-bea8-4719-a360-628db5e2de62 204 145ms","method":"DELETE","requestID":"84d583cf2d7cb8686c1e2269dda04105","responseTime":145,"status":204,"url":"/experiments/baeb66b7-bea8-4719-a360-628db5e2de62"} gateway-1 | {"time_local":"02/Aug/2024:16:26:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1781","request_time":"2.157","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"d90ddd0db65290bf58bd018d30ca84f0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 118ms","method":"POST","requestID":"7fc44610c7b314346006986e78424edc","responseTime":118,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:18 +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":"7fc44610c7b314346006986e78424edc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 118ms","method":"POST","requestID":"187384f4cc860d4a701876ca44371128","responseTime":118,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:18 +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.122","http_referrer":"","http_user_agent":"node-fetch","requestID":"187384f4cc860d4a701876ca44371128"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3OH0.3I7LFSwjb_moL9idO2f0-TpC6SOuHOXOAAacYD0ChDw","level":"info","message":"auth send jwt","requestID":"e2cbb45c3f2d111c8f574c48486b37f6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e2cbb45c3f2d111c8f574c48486b37f6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e2cbb45c3f2d111c8f574c48486b37f6"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":997,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:18Z"} gateway-1 | {"time_local":"02/Aug/2024:16:26:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2108","request_time":"0.680","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":"42736dcefa97fcdd5fd9c4962f9d1093"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":997,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.100769,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e2cbb45c3f2d111c8f574c48486b37f6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615978,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3OH0.3I7LFSwjb_moL9idO2f0-TpC6SOuHOXOAAacYD0ChDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e2cbb45c3f2d111c8f574c48486b37f6","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/b117c0e8-8444-4aea-a5fe-55c00cd26780' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3697dda2-e524-4b51-99c1-8f87e42fa89c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"66f6c38a-be67-4dfe-8869-8ca144e48a54","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615978.125377} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e2cbb45c3f2d111c8f574c48486b37f6","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/8b95bafe-1779-42f9-bf4c-1ca96e3c5f23' 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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bdeac109-2bcb-4f91-856b-91772e184a64","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615978.130427} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e2cbb45c3f2d111c8f574c48486b37f6","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3697dda2-e524-4b51-99c1-8f87e42fa89c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"9f02ad14-0611-45b4-bbca-333077f4026a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615978.1450524} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7200778e-a1a2-43d4-b522-7cd9dd5746e8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615978.1453204} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"e2cbb45c3f2d111c8f574c48486b37f6","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3697dda2-e524-4b51-99c1-8f87e42fa89c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3697dda2-e524-4b51-99c1-8f87e42fa89c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:18.145014358Z"}]},"request_id":"50a6a792-efea-4c30-aa7f-cc566b198cb6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615978.1493604} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e2cbb45c3f2d111c8f574c48486b37f6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e2cbb45c3f2d111c8f574c48486b37f6"} gateway-1 | {"time_local":"02/Aug/2024:16:26:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e2cbb45c3f2d111c8f574c48486b37f6"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"e2cbb45c3f2d111c8f574c48486b37f6","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3OH0.3I7LFSwjb_moL9idO2f0-TpC6SOuHOXOAAacYD0ChDw","level":"info","message":"auth send jwt","requestID":"3ebfaad25bbde400acd46354ee1bf68b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3ebfaad25bbde400acd46354ee1bf68b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3ebfaad25bbde400acd46354ee1bf68b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":998,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":998,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.733427,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"3ebfaad25bbde400acd46354ee1bf68b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615978,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3OH0.3I7LFSwjb_moL9idO2f0-TpC6SOuHOXOAAacYD0ChDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3ebfaad25bbde400acd46354ee1bf68b","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb024e149-9397-4249-a33b-b2e161a1b4e1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"06bb86c4-c543-40b2-99b6-c83c180dc0ae","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615978.1727057} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3ebfaad25bbde400acd46354ee1bf68b","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"339fe0bf-83a3-4ac8-94c6-b8dd4b703279","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615978.1773689} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"3ebfaad25bbde400acd46354ee1bf68b","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb024e149-9397-4249-a33b-b2e161a1b4e1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"7d49ae46-be7e-43d2-b4e4-b26049995ab1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615978.1894963} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9b1bbe95-85e1-42fa-99ac-63ded1d083cb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615978.1896553} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"3ebfaad25bbde400acd46354ee1bf68b","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb024e149-9397-4249-a33b-b2e161a1b4e1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb024e149-9397-4249-a33b-b2e161a1b4e1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:18.189469374Z"}]},"request_id":"aead564d-12ba-4df7-8c93-ddd991f56cd4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615978.1938798} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3ebfaad25bbde400acd46354ee1bf68b","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3ebfaad25bbde400acd46354ee1bf68b"} gateway-1 | {"time_local":"02/Aug/2024:16:26:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3ebfaad25bbde400acd46354ee1bf68b"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"3ebfaad25bbde400acd46354ee1bf68b","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3OH0.3I7LFSwjb_moL9idO2f0-TpC6SOuHOXOAAacYD0ChDw","level":"info","message":"auth send jwt","requestID":"fbddf1085a4f3d720e80fe792be1a38f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fbddf1085a4f3d720e80fe792be1a38f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"fbddf1085a4f3d720e80fe792be1a38f"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":999,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":999,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.728413,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fbddf1085a4f3d720e80fe792be1a38f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615978,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3OH0.3I7LFSwjb_moL9idO2f0-TpC6SOuHOXOAAacYD0ChDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fbddf1085a4f3d720e80fe792be1a38f","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3697dda2-e524-4b51-99c1-8f87e42fa89c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3697dda2-e524-4b51-99c1-8f87e42fa89c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:18.145014358Z"}]},"request_id":"b7b3447d-e236-4829-85bf-13ccaf99d0b0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615978.7096233} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fbddf1085a4f3d720e80fe792be1a38f","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6f92105a-77bf-451c-ad22-0a4cf96a77c7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615978.7146409} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"fbddf1085a4f3d720e80fe792be1a38f","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3697dda2-e524-4b51-99c1-8f87e42fa89c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3697dda2-e524-4b51-99c1-8f87e42fa89c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:18.145014358Z"}]},"request_id":"4bb8e8f1-fc4f-4628-aa4a-399c88c28960","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615978.7270672} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fbddf1085a4f3d720e80fe792be1a38f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"fbddf1085a4f3d720e80fe792be1a38f"} gateway-1 | {"time_local":"02/Aug/2024:16:26:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3697dda2-e524-4b51-99c1-8f87e42fa89c HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.036","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"fbddf1085a4f3d720e80fe792be1a38f"} device-1 | {"level":"info","message":"PATCH /devices/3697dda2-e524-4b51-99c1-8f87e42fa89c 200 30ms","method":"PATCH","requestID":"fbddf1085a4f3d720e80fe792be1a38f","responseTime":30,"status":200,"url":"/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3OH0.3I7LFSwjb_moL9idO2f0-TpC6SOuHOXOAAacYD0ChDw","level":"info","message":"auth send jwt","requestID":"73e0dcb97d2fd38688784bda5cc1fb93"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"73e0dcb97d2fd38688784bda5cc1fb93","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"73e0dcb97d2fd38688784bda5cc1fb93"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1000,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:18Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1000,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.265429,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"73e0dcb97d2fd38688784bda5cc1fb93","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615978,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk3OH0.3I7LFSwjb_moL9idO2f0-TpC6SOuHOXOAAacYD0ChDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"73e0dcb97d2fd38688784bda5cc1fb93","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"73e0dcb97d2fd38688784bda5cc1fb93"} device-1 | {"level":"info","message":"POST /devices/3697dda2-e524-4b51-99c1-8f87e42fa89c/websocket 200 19ms","method":"POST","requestID":"73e0dcb97d2fd38688784bda5cc1fb93","responseTime":19,"status":200,"url":"/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:26:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3697dda2-e524-4b51-99c1-8f87e42fa89c/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"73e0dcb97d2fd38688784bda5cc1fb93"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"77eddc0b927424fa581a5219cc5877f8","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":"77eddc0b927424fa581a5219cc5877f8","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b024e149-9397-4249-a33b-b2e161a1b4e1/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":"77eddc0b927424fa581a5219cc5877f8"} device-1 | {"level":"info","message":"OPTIONS /devices/b024e149-9397-4249-a33b-b2e161a1b4e1/websocket 200 1ms","method":"OPTIONS","requestID":"77eddc0b927424fa581a5219cc5877f8","responseTime":1,"status":200,"url":"/devices/b024e149-9397-4249-a33b-b2e161a1b4e1/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI","level":"info","message":"auth send jwt","requestID":"d87e5b8ea378b028fdf0f33988b17d92"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d87e5b8ea378b028fdf0f33988b17d92","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d87e5b8ea378b028fdf0f33988b17d92"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1001,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1001,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.275293,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d87e5b8ea378b028fdf0f33988b17d92","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615980,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d87e5b8ea378b028fdf0f33988b17d92","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d87e5b8ea378b028fdf0f33988b17d92"} gateway-1 | {"time_local":"02/Aug/2024:16:26:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b024e149-9397-4249-a33b-b2e161a1b4e1/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":"d87e5b8ea378b028fdf0f33988b17d92"} device-1 | {"level":"info","message":"POST /devices/b024e149-9397-4249-a33b-b2e161a1b4e1/websocket 200 21ms","method":"POST","requestID":"d87e5b8ea378b028fdf0f33988b17d92","responseTime":21,"status":200,"url":"/devices/b024e149-9397-4249-a33b-b2e161a1b4e1/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bf78637a944514a238f0876ea13c8d07","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":"bf78637a944514a238f0876ea13c8d07","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b024e149-9397-4249-a33b-b2e161a1b4e1? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"bf78637a944514a238f0876ea13c8d07"} device-1 | {"level":"info","message":"OPTIONS /devices/b024e149-9397-4249-a33b-b2e161a1b4e1? 200 1ms","method":"OPTIONS","requestID":"bf78637a944514a238f0876ea13c8d07","responseTime":1,"status":200,"url":"/devices/b024e149-9397-4249-a33b-b2e161a1b4e1?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI","level":"info","message":"auth send jwt","requestID":"39808abecad28df3f1e6f45890e1c123"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"39808abecad28df3f1e6f45890e1c123","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"39808abecad28df3f1e6f45890e1c123"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1002,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1002,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.222804,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"39808abecad28df3f1e6f45890e1c123","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615980,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"39808abecad28df3f1e6f45890e1c123","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb024e149-9397-4249-a33b-b2e161a1b4e1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb024e149-9397-4249-a33b-b2e161a1b4e1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:18.189469374Z"}]},"request_id":"424157ef-9ce4-4e4b-9ffb-f3ef7d1f0721","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.3146539} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"39808abecad28df3f1e6f45890e1c123","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"93b38e1f-d7b9-4c89-8de1-dd9e9ca3e38c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.3219087} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"39808abecad28df3f1e6f45890e1c123","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb024e149-9397-4249-a33b-b2e161a1b4e1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb024e149-9397-4249-a33b-b2e161a1b4e1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:18.189469374Z"}]},"request_id":"9565abba-c691-4360-8a63-7d11939d72cb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.3348649} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"39808abecad28df3f1e6f45890e1c123","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"39808abecad28df3f1e6f45890e1c123"} gateway-1 | {"time_local":"02/Aug/2024:16:26:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b024e149-9397-4249-a33b-b2e161a1b4e1? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.046","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":"39808abecad28df3f1e6f45890e1c123"} device-1 | {"level":"info","message":"PATCH /devices/b024e149-9397-4249-a33b-b2e161a1b4e1? 200 38ms","method":"PATCH","requestID":"39808abecad28df3f1e6f45890e1c123","responseTime":38,"status":200,"url":"/devices/b024e149-9397-4249-a33b-b2e161a1b4e1?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI","level":"info","message":"auth send jwt","requestID":"5e50b1567e299d50adc397f3f70d78ef"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5e50b1567e299d50adc397f3f70d78ef","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5e50b1567e299d50adc397f3f70d78ef"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1003,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1003,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.391661,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"5e50b1567e299d50adc397f3f70d78ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615980,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5e50b1567e299d50adc397f3f70d78ef","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3697dda2-e524-4b51-99c1-8f87e42fa89c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3697dda2-e524-4b51-99c1-8f87e42fa89c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:18.145014358Z"}]},"request_id":"76ab29a3-40ba-4b31-b756-a5f04162908e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.365312} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5e50b1567e299d50adc397f3f70d78ef","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5e50b1567e299d50adc397f3f70d78ef"} device-1 | {"level":"info","message":"GET /devices/3697dda2-e524-4b51-99c1-8f87e42fa89c? 200 18ms","method":"GET","requestID":"5e50b1567e299d50adc397f3f70d78ef","responseTime":18,"status":200,"url":"/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3697dda2-e524-4b51-99c1-8f87e42fa89c? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5e50b1567e299d50adc397f3f70d78ef"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI","level":"info","message":"auth send jwt","requestID":"642b415425a71d898c43f1fed1806ee0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"642b415425a71d898c43f1fed1806ee0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"642b415425a71d898c43f1fed1806ee0"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1004,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1004,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.226909,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"642b415425a71d898c43f1fed1806ee0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615980,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"642b415425a71d898c43f1fed1806ee0","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb024e149-9397-4249-a33b-b2e161a1b4e1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb024e149-9397-4249-a33b-b2e161a1b4e1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:18.189469374Z"}]},"request_id":"355ec40b-b1e0-4cc3-8f7b-fa0e143d6b06","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.3911746} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"642b415425a71d898c43f1fed1806ee0","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"642b415425a71d898c43f1fed1806ee0"} gateway-1 | {"time_local":"02/Aug/2024:16:26:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b024e149-9397-4249-a33b-b2e161a1b4e1? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"642b415425a71d898c43f1fed1806ee0"} device-1 | {"level":"info","message":"GET /devices/b024e149-9397-4249-a33b-b2e161a1b4e1? 200 19ms","method":"GET","requestID":"642b415425a71d898c43f1fed1806ee0","responseTime":19,"status":200,"url":"/devices/b024e149-9397-4249-a33b-b2e161a1b4e1?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI","level":"info","message":"auth send jwt","requestID":"c90305235dbf4e937e5e10de122c4ceb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c90305235dbf4e937e5e10de122c4ceb","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"c90305235dbf4e937e5e10de122c4ceb"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1005,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1005,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.394988,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c90305235dbf4e937e5e10de122c4ceb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615980,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c90305235dbf4e937e5e10de122c4ceb","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f"},"level":"info","message":"Attempting to run experiment","requestID":"c90305235dbf4e937e5e10de122c4ceb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f"},"level":"info","message":"Attempting to book experiment","requestID":"c90305235dbf4e937e5e10de122c4ceb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f"},"level":"info","message":"Successfully booked experiment","requestID":"c90305235dbf4e937e5e10de122c4ceb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f37fcb70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f3801990-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1006,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1006,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.124847,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f37fcb70-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615980,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f37fcb70-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1007,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1007,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.61318,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f3801990-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615980,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f3801990-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3697dda2-e524-4b51-99c1-8f87e42fa89c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3697dda2-e524-4b51-99c1-8f87e42fa89c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:18.145014358Z"}]},"request_id":"68f9acc6-19e3-4368-aef9-e8d41f9eaade","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.4657018} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f37fcb70-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb024e149-9397-4249-a33b-b2e161a1b4e1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb024e149-9397-4249-a33b-b2e161a1b4e1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:18.189469374Z"}]},"request_id":"e418d134-2771-475b-b7e0-3ecb9e0794ea","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.46663} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f3801990-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f37fcb70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/3697dda2-e524-4b51-99c1-8f87e42fa89c? 200 20ms","method":"GET","requestID":"f37fcb70-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f3801990-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/b024e149-9397-4249-a33b-b2e161a1b4e1? 200 20ms","method":"GET","requestID":"f3801990-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/b024e149-9397-4249-a33b-b2e161a1b4e1?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f"},"level":"info","message":"Setting up experiment","requestID":"c90305235dbf4e937e5e10de122c4ceb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"c90305235dbf4e937e5e10de122c4ceb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"c90305235dbf4e937e5e10de122c4ceb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"c90305235dbf4e937e5e10de122c4ceb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"c90305235dbf4e937e5e10de122c4ceb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"c90305235dbf4e937e5e10de122c4ceb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"c90305235dbf4e937e5e10de122c4ceb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f"},"level":"info","message":"Successfully set up experiment","requestID":"c90305235dbf4e937e5e10de122c4ceb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f38b6430-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f38bb250-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f38c0070-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f"},"level":"info","message":"Successfully running experiment","requestID":"c90305235dbf4e937e5e10de122c4ceb"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1008,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1008,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.684126,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1009,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f38b6430-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615980,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f38b6430-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1009,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.991595,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"client_addr":"127.0.0.1:34360","level":"info","msg":"Received request.","req_id":1010,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f38bb250-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615980,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f38bb250-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34360","level":"info","msg":"Sent response.","req_id":1010,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.762173,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3697dda2-e524-4b51-99c1-8f87e42fa89c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"589a9717-5615-4a36-8e1e-aa2e36a1fdc9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.539795} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f38c0070-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c","object_type":"device","rebac_allow":false,"scope_allow":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":"f38c0070-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3697dda2-e524-4b51-99c1-8f87e42fa89c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3697dda2-e524-4b51-99c1-8f87e42fa89c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:18.145014358Z"}]},"request_id":"795c31ef-2adf-482d-9afb-7e476035bf3a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.544768} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"f38b6430-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb024e149-9397-4249-a33b-b2e161a1b4e1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb024e149-9397-4249-a33b-b2e161a1b4e1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:18.189469374Z"}]},"request_id":"4715598b-068e-4a90-a66c-994315855225","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.5484111} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f38c0070-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/3697dda2-e524-4b51-99c1-8f87e42fa89c/signaling 200 14ms","method":"POST","requestID":"f38c0070-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f38bb250-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f38f0db0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f38b6430-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/3697dda2-e524-4b51-99c1-8f87e42fa89c? 200 26ms","method":"GET","requestID":"f38b6430-50eb-11ef-8434-2f6d198c7397","responseTime":26,"status":200,"url":"/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f38bb250-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/b024e149-9397-4249-a33b-b2e161a1b4e1? 200 26ms","method":"GET","requestID":"f38bb250-50eb-11ef-8434-2f6d198c7397","responseTime":26,"status":200,"url":"/devices/b024e149-9397-4249-a33b-b2e161a1b4e1?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1011,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fff5cb15a-73a4-4562-b218-ac1e194f1b2f#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fff5cb15a-73a4-4562-b218-ac1e194f1b2f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"ab8a5222-01c9-48ad-bf2b-1a270f204258","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.5610867} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb024e149-9397-4249-a33b-b2e161a1b4e1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e3f91f27-8d87-430e-9751-3a1fde454d7e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.5612366} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c5373847-10d1-4d06-ba07-dc7ac17f609f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.5614026} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f3901f20-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"c90305235dbf4e937e5e10de122c4ceb","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1011,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.427514,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f38f0db0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1","object_type":"device","rebac_allow":false,"scope_allow":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":"f38f0db0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1012,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f38f0db0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/b024e149-9397-4249-a33b-b2e161a1b4e1/signaling 200 14ms","method":"POST","requestID":"f38f0db0-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/b024e149-9397-4249-a33b-b2e161a1b4e1/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3697dda2-e524-4b51-99c1-8f87e42fa89c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c40693cb-1fb1-4272-8bcc-527e0b1fcdb6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.5697536} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1012,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.130875,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f3901f20-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c","object_type":"device","rebac_allow":false,"scope_allow":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":"f3901f20-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"c90305235dbf4e937e5e10de122c4ceb"} gateway-1 | {"time_local":"02/Aug/2024:16:26:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.174","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c90305235dbf4e937e5e10de122c4ceb"} experiment-1 | {"level":"info","message":"POST /experiments? 201 168ms","method":"POST","requestID":"c90305235dbf4e937e5e10de122c4ceb","responseTime":168,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f3901f20-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/3697dda2-e524-4b51-99c1-8f87e42fa89c/signaling 200 12ms","method":"POST","requestID":"f3901f20-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f3926910-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI","level":"info","message":"auth send jwt","requestID":"a59fcab36be351bb1f27bafc1fc392f8"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a59fcab36be351bb1f27bafc1fc392f8","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1013,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a59fcab36be351bb1f27bafc1fc392f8"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb024e149-9397-4249-a33b-b2e161a1b4e1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2316a117-a994-4675-9353-52bc0510ca4a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.5829782} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1013,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.821493,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1014,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f3926910-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1","object_type":"device","rebac_allow":false,"scope_allow":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":"f3926910-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1014,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.781834,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a59fcab36be351bb1f27bafc1fc392f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615980,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a59fcab36be351bb1f27bafc1fc392f8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f3926910-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/b024e149-9397-4249-a33b-b2e161a1b4e1/signaling 200 12ms","method":"POST","requestID":"f3926910-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/b024e149-9397-4249-a33b-b2e161a1b4e1/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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3697dda2-e524-4b51-99c1-8f87e42fa89c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3697dda2-e524-4b51-99c1-8f87e42fa89c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:18.145014358Z"}]},"request_id":"2a6206ae-73b8-43a5-a57b-7f7e7e91069f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.5895932} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"c90305235dbf4e937e5e10de122c4ceb"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a59fcab36be351bb1f27bafc1fc392f8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f394b300-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f394da10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a59fcab36be351bb1f27bafc1fc392f8"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1015,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1015,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.675992,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1016,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} gateway-1 | {"time_local":"02/Aug/2024:16:26:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3697dda2-e524-4b51-99c1-8f87e42fa89c? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a59fcab36be351bb1f27bafc1fc392f8"} device-1 | {"level":"info","message":"GET /devices/3697dda2-e524-4b51-99c1-8f87e42fa89c? 200 14ms","method":"GET","requestID":"a59fcab36be351bb1f27bafc1fc392f8","responseTime":14,"status":200,"url":"/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f394b300-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615980,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f394b300-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1016,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.804603,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f394da10-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615980,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f394da10-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3697dda2-e524-4b51-99c1-8f87e42fa89c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3697dda2-e524-4b51-99c1-8f87e42fa89c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:18.145014358Z"}]},"request_id":"e52fab61-d8b7-4fc9-926d-68afbef4c0b8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.6000366} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI","level":"info","message":"auth send jwt","requestID":"ca2b30f6cc4a2cb63abf84eb7384d831"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ca2b30f6cc4a2cb63abf84eb7384d831","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f394b300-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb024e149-9397-4249-a33b-b2e161a1b4e1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb024e149-9397-4249-a33b-b2e161a1b4e1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:18.189469374Z"}]},"request_id":"cbf520ce-6570-4731-8a83-39bfb15f4ad9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.6010706} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f394da10-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ca2b30f6cc4a2cb63abf84eb7384d831"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1017,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1017,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.708367,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f394b300-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ca2b30f6cc4a2cb63abf84eb7384d831","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615980,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI"} device-1 | {"level":"info","message":"GET /devices/3697dda2-e524-4b51-99c1-8f87e42fa89c? 200 14ms","method":"GET","requestID":"f394b300-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c?"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"ca2b30f6cc4a2cb63abf84eb7384d831","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f394da10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/b024e149-9397-4249-a33b-b2e161a1b4e1? 200 14ms","method":"GET","requestID":"f394da10-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/b024e149-9397-4249-a33b-b2e161a1b4e1?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f"},"level":"info","message":"Building connection plan","requestID":"c90305235dbf4e937e5e10de122c4ceb"} 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":"e39940c5-44bc-4fa4-9236-8de65f186698"},{"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":"2d63215f-0df1-454a-90c9-8c4730c2c615"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"591fe725-e940-4832-a3d0-4b5193cac4dc"}]},"level":"info","message":"Built pairwise service configurations","requestID":"c90305235dbf4e937e5e10de122c4ceb"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"f3977220-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"f3977220-50eb-11ef-a432-47ab85bb6d58"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb024e149-9397-4249-a33b-b2e161a1b4e1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb024e149-9397-4249-a33b-b2e161a1b4e1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:18.189469374Z"}]},"request_id":"4d5acb88-de86-4a4a-a4e8-6222c6d34ead","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.610787} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"f3977220-50eb-11ef-a432-47ab85bb6d58","responseTime":1,"status":201,"url":"/rooms"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ca2b30f6cc4a2cb63abf84eb7384d831","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/125bef58-a865-496d-a359-4fba94628429?id=21ef3b3b-b721-496b-8779-9eb52d019c87","ws://localhost/rooms/125bef58-a865-496d-a359-4fba94628429?id=3fbc6022-edd3-4a45-80dd-907cb17e3d2a"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"c90305235dbf4e937e5e10de122c4ceb"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f397e750-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ca2b30f6cc4a2cb63abf84eb7384d831"} gateway-1 | {"time_local":"02/Aug/2024:16:26:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b024e149-9397-4249-a33b-b2e161a1b4e1? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ca2b30f6cc4a2cb63abf84eb7384d831"} device-1 | {"level":"info","message":"GET /devices/b024e149-9397-4249-a33b-b2e161a1b4e1? 200 12ms","method":"GET","requestID":"ca2b30f6cc4a2cb63abf84eb7384d831","responseTime":12,"status":200,"url":"/devices/b024e149-9397-4249-a33b-b2e161a1b4e1?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1018,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1018,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.435349,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f397e750-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615980,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f397e750-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"9738e357-9f66-45a4-80b8-ffebb8fb02eb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.6243062} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b08ec8f1-c902-4b80-9690-8a63c7626116","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.6245575} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f397e750-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f397e750-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f397e750-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/d1396b69-1247-4595-92a3-8fc21b3ebdab'","requestID":"f397e750-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/d1396b69-1247-4595-92a3-8fc21b3ebdab'","requestID":"f397e750-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f397e750-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 24ms","method":"POST","requestID":"f397e750-50eb-11ef-8434-2f6d198c7397","responseTime":24,"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":"f397e750-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d1396b69-1247-4595-92a3-8fc21b3ebdab' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d1396b69-1247-4595-92a3-8fc21b3ebdab","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f39d1770-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3fbc6022-edd3-4a45-80dd-907cb17e3d2a\" in room \"http://localhost/rooms/125bef58-a865-496d-a359-4fba94628429\"","requestID":"f39d1770-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f39d1770-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f39d3e80-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"21ef3b3b-b721-496b-8779-9eb52d019c87\" in room \"http://localhost/rooms/125bef58-a865-496d-a359-4fba94628429\"","requestID":"f39d3e80-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f39d3e80-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"21ef3b3b-b721-496b-8779-9eb52d019c87\" in room \"http://localhost/rooms/125bef58-a865-496d-a359-4fba94628429\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0d6a360c98c767f9e7637519b58a54b1","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)"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"21ef3b3b-b721-496b-8779-9eb52d019c87\" in room \"http://localhost/rooms/125bef58-a865-496d-a359-4fba94628429\""} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0d6a360c98c767f9e7637519b58a54b1","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/d1396b69-1247-4595-92a3-8fc21b3ebdab"}}},"level":"info","message":"received a callback","requestID":"0d6a360c98c767f9e7637519b58a54b1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"0d6a360c98c767f9e7637519b58a54b1","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26: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":"0d6a360c98c767f9e7637519b58a54b1"} device-1 | {"data":{"peerconnection":"d1396b69-1247-4595-92a3-8fc21b3ebdab","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"c90305235dbf4e937e5e10de122c4ceb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f3a10f10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"data":{"peerconnection":"d1396b69-1247-4595-92a3-8fc21b3ebdab","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1019,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3697dda2-e524-4b51-99c1-8f87e42fa89c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"26a64a5e-b4e8-4baa-8053-cdd698b9ceb8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.677185} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1019,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.149912,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f3a10f10-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c","object_type":"device","rebac_allow":false,"scope_allow":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":"f3a10f10-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d1396b69-1247-4595-92a3-8fc21b3ebdab' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d1396b69-1247-4595-92a3-8fc21b3ebdab","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f3a10f10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/3697dda2-e524-4b51-99c1-8f87e42fa89c/signaling 200 15ms","method":"POST","requestID":"f3a10f10-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"87d999c1edd87d180d2a43a2fc2b49e0","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":"87d999c1edd87d180d2a43a2fc2b49e0","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f3a3a720-50eb-11ef-8434-2f6d198c7397"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/d1396b69-1247-4595-92a3-8fc21b3ebdab"}}},"level":"info","message":"received a callback","requestID":"87d999c1edd87d180d2a43a2fc2b49e0"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1020,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb024e149-9397-4249-a33b-b2e161a1b4e1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7d5da4c9-2ec2-47d0-94f8-49dfb285eac8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.694447} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1020,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.362185,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f3a3a720-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1","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":"getPeerconnectionsByPeerconnectionId called","requestID":"f3a46a70-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f3a3a720-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1021,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd1396b69-1247-4595-92a3-8fc21b3ebdab","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"24cbb381-5493-445f-94d8-c6f85692f742","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.699508} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f3a3a720-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/b024e149-9397-4249-a33b-b2e161a1b4e1/signaling 200 10ms","method":"POST","requestID":"f3a3a720-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/b024e149-9397-4249-a33b-b2e161a1b4e1/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1021,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.576092,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d1396b69-1247-4595-92a3-8fc21b3ebdab","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f3a46a70-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/d1396b69-1247-4595-92a3-8fc21b3ebdab","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":"f3a46a70-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"f3a46a70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/d1396b69-1247-4595-92a3-8fc21b3ebdab 200 8ms","method":"GET","requestID":"f3a46a70-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/peerconnections/d1396b69-1247-4595-92a3-8fc21b3ebdab"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"87d999c1edd87d180d2a43a2fc2b49e0","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26: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.031","http_referrer":"","http_user_agent":"node-fetch","requestID":"87d999c1edd87d180d2a43a2fc2b49e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f3a7ece0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1022,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb024e149-9397-4249-a33b-b2e161a1b4e1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"05f9d9f7-8475-48ad-b7e6-1f5271aef1ac","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.7227507} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1022,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.370511,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f3a7ece0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1","object_type":"device","rebac_allow":false,"scope_allow":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":"f3a7ece0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f3a7ece0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/b024e149-9397-4249-a33b-b2e161a1b4e1/signaling 200 9ms","method":"POST","requestID":"f3a7ece0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/b024e149-9397-4249-a33b-b2e161a1b4e1/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f3a97380-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1023,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3697dda2-e524-4b51-99c1-8f87e42fa89c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5ce62620-a510-4906-be04-193b8659f9cd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.7333865} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1023,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.892827,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f3a97380-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c","object_type":"device","rebac_allow":false,"scope_allow":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":"f3a97380-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f3a97380-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/3697dda2-e524-4b51-99c1-8f87e42fa89c/signaling 200 14ms","method":"POST","requestID":"f3a97380-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI","level":"info","message":"auth send jwt","requestID":"95676ad6bff729e8620ac4fa0b62bb3e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"95676ad6bff729e8620ac4fa0b62bb3e","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f","requestID":"95676ad6bff729e8620ac4fa0b62bb3e"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1024,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1024,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.720806,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"95676ad6bff729e8620ac4fa0b62bb3e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615980,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"95676ad6bff729e8620ac4fa0b62bb3e","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f","requestID":"95676ad6bff729e8620ac4fa0b62bb3e"} gateway-1 | {"time_local":"02/Aug/2024:16:26:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"95676ad6bff729e8620ac4fa0b62bb3e"} experiment-1 | {"level":"info","message":"GET /experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f 200 11ms","method":"GET","requestID":"95676ad6bff729e8620ac4fa0b62bb3e","responseTime":11,"status":200,"url":"/experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI","level":"info","message":"auth send jwt","requestID":"e09536e5cb8186278ab086bd00fd0cb7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e09536e5cb8186278ab086bd00fd0cb7","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f","requestID":"e09536e5cb8186278ab086bd00fd0cb7"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1025,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1025,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.971495,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e09536e5cb8186278ab086bd00fd0cb7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615980,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e09536e5cb8186278ab086bd00fd0cb7","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f"},"level":"info","message":"Attempting to finish experiment","requestID":"e09536e5cb8186278ab086bd00fd0cb7"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"f3b22610-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1026,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1026,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.699469,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d1396b69-1247-4595-92a3-8fc21b3ebdab","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f3b22610-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/d1396b69-1247-4595-92a3-8fc21b3ebdab","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615980,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f3b22610-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:26:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/125bef58-a865-496d-a359-4fba94628429?id=3fbc6022-edd3-4a45-80dd-907cb17e3d2a HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.153","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"22bc36059c1a9f283e9c3dc2a424675f"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"3fbc6022-edd3-4a45-80dd-907cb17e3d2a\" in room \"http://localhost/rooms/125bef58-a865-496d-a359-4fba94628429\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"3fbc6022-edd3-4a45-80dd-907cb17e3d2a\" from room \"http://localhost/rooms/125bef58-a865-496d-a359-4fba94628429\""} gateway-1 | {"time_local":"02/Aug/2024:16:26:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/125bef58-a865-496d-a359-4fba94628429?id=21ef3b3b-b721-496b-8779-9eb52d019c87 HTTP/1.1","status": "101","body_bytes_sent":"460","request_time":"0.153","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":"ec4cc33a651b5c370943afcda1548ae2"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/d1396b69-1247-4595-92a3-8fc21b3ebdab","device":"b024e149-9397-4249-a33b-b2e161a1b4e1","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"21ef3b3b-b721-496b-8779-9eb52d019c87\" in room \"http://localhost/rooms/125bef58-a865-496d-a359-4fba94628429\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"21ef3b3b-b721-496b-8779-9eb52d019c87\" from room \"http://localhost/rooms/125bef58-a865-496d-a359-4fba94628429\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d1396b69-1247-4595-92a3-8fc21b3ebdab' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/d1396b69-1247-4595-92a3-8fc21b3ebdab' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d1396b69-1247-4595-92a3-8fc21b3ebdab","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8c7bb99dc2389ed8542fc9f9e75ab8a8","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":"8c7bb99dc2389ed8542fc9f9e75ab8a8","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/d1396b69-1247-4595-92a3-8fc21b3ebdab"}}},"level":"info","message":"received a callback","requestID":"8c7bb99dc2389ed8542fc9f9e75ab8a8"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b22c2807e7ab56dc02d03e1ab26d9a7a","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":"b22c2807e7ab56dc02d03e1ab26d9a7a","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/d1396b69-1247-4595-92a3-8fc21b3ebdab"}}},"level":"info","message":"received a callback","requestID":"b22c2807e7ab56dc02d03e1ab26d9a7a"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd1396b69-1247-4595-92a3-8fc21b3ebdab': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd1396b69-1247-4595-92a3-8fc21b3ebdab","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"02c28b1d-76c3-4758-85db-447c02272f88","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.8077953} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"321020cc-c38f-404e-9f1a-f0bd774c1d43","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.8079467} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"f3b22610-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"d1396b69-1247-4595-92a3-8fc21b3ebdab","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"f3b22610-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/d1396b69-1247-4595-92a3-8fc21b3ebdab 204 42ms","method":"DELETE","requestID":"f3b22610-50eb-11ef-8434-2f6d198c7397","responseTime":42,"status":204,"url":"/peerconnections/d1396b69-1247-4595-92a3-8fc21b3ebdab"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f"},"level":"info","message":"Successfully finished experiment","requestID":"e09536e5cb8186278ab086bd00fd0cb7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f3bb4dd0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1027,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb024e149-9397-4249-a33b-b2e161a1b4e1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1210e2ff-e583-4bcc-b718-af2403bdb4fc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.8510919} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1027,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.272777,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f3bb4dd0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b024e149-9397-4249-a33b-b2e161a1b4e1","object_type":"device","rebac_allow":false,"scope_allow":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":"f3bb4dd0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f3bb4dd0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/b024e149-9397-4249-a33b-b2e161a1b4e1/signaling 200 11ms","method":"POST","requestID":"f3bb4dd0-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/b024e149-9397-4249-a33b-b2e161a1b4e1/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fff5cb15a-73a4-4562-b218-ac1e194f1b2f': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fff5cb15a-73a4-4562-b218-ac1e194f1b2f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"6dd357c4-520b-4150-a64a-f0239509468b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.858139} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f3bd70b0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"394896c8-2d71-4842-abb6-eb4accb45951","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.8584216} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"e09536e5cb8186278ab086bd00fd0cb7","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1028,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3697dda2-e524-4b51-99c1-8f87e42fa89c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a9922979-489a-477f-bf32-d2bd92bdc0f2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.8652787} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1028,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.787409,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f3bd70b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c","object_type":"device","rebac_allow":false,"scope_allow":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":"f3bd70b0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f3bd70b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/3697dda2-e524-4b51-99c1-8f87e42fa89c/signaling 200 11ms","method":"POST","requestID":"f3bd70b0-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/3697dda2-e524-4b51-99c1-8f87e42fa89c/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f","requestID":"e09536e5cb8186278ab086bd00fd0cb7"} gateway-1 | {"time_local":"02/Aug/2024:16:26:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e09536e5cb8186278ab086bd00fd0cb7"} experiment-1 | {"level":"info","message":"DELETE /experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f 204 145ms","method":"DELETE","requestID":"e09536e5cb8186278ab086bd00fd0cb7","responseTime":145,"status":204,"url":"/experiments/ff5cb15a-73a4-4562-b218-ac1e194f1b2f"} gateway-1 | {"time_local":"02/Aug/2024:16:26:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1783","request_time":"2.164","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"e8bed341a0d1c0a9db8a397019680a65"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 118ms","method":"POST","requestID":"8c7bb99dc2389ed8542fc9f9e75ab8a8","responseTime":118,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26: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.121","http_referrer":"","http_user_agent":"node-fetch","requestID":"8c7bb99dc2389ed8542fc9f9e75ab8a8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 118ms","method":"POST","requestID":"b22c2807e7ab56dc02d03e1ab26d9a7a","responseTime":118,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI","level":"info","message":"auth send jwt","requestID":"17c6d5c93258f1f8477d575b4f49ca24"} gateway-1 | {"time_local":"02/Aug/2024:16:26: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.122","http_referrer":"","http_user_agent":"node-fetch","requestID":"b22c2807e7ab56dc02d03e1ab26d9a7a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"17c6d5c93258f1f8477d575b4f49ca24","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"17c6d5c93258f1f8477d575b4f49ca24"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1029,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} gateway-1 | {"time_local":"02/Aug/2024:16:26:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2106","request_time":"0.676","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":"ca17b48ba971e4572a83b0b0c31a37a2"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1029,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.091869,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"17c6d5c93258f1f8477d575b4f49ca24","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615980,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"17c6d5c93258f1f8477d575b4f49ca24","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/3697dda2-e524-4b51-99c1-8f87e42fa89c' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9d402f-ee63-481d-ac60-3f82c9868047","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"41bcab3d-adb4-469f-800d-670f824b971f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.950333} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"17c6d5c93258f1f8477d575b4f49ca24","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/b024e149-9397-4249-a33b-b2e161a1b4e1' 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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"73182d36-dcaa-48e8-b790-17a3899b9b18","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.9552069} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"17c6d5c93258f1f8477d575b4f49ca24","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9d402f-ee63-481d-ac60-3f82c9868047","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"23310ca6-4bd5-479a-a176-021a5dd6e645","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.9641483} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c6762f46-e996-469e-9e1b-a00f2b9c4459","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.964403} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"17c6d5c93258f1f8477d575b4f49ca24","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9d402f-ee63-481d-ac60-3f82c9868047","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9d402f-ee63-481d-ac60-3f82c9868047","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:20.964120892Z"}]},"request_id":"9f632711-924f-4b27-a88a-4db870b1ceed","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.9683738} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"17c6d5c93258f1f8477d575b4f49ca24","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"17c6d5c93258f1f8477d575b4f49ca24"} gateway-1 | {"time_local":"02/Aug/2024:16:26:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"17c6d5c93258f1f8477d575b4f49ca24"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"17c6d5c93258f1f8477d575b4f49ca24","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI","level":"info","message":"auth send jwt","requestID":"3f2fb5edb59bcf817231cfcd4771a145"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3f2fb5edb59bcf817231cfcd4771a145","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3f2fb5edb59bcf817231cfcd4771a145"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1030,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1030,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.752144,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"3f2fb5edb59bcf817231cfcd4771a145","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615980,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MH0.XQNCaLBSgyM9CFjowxAu4P9K_NOkHNnQ2m0mStQ6hjI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3f2fb5edb59bcf817231cfcd4771a145","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb59d5d8a-69da-4712-ae3f-9a4cd92f36a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d0da77d7-521c-45f2-8fbc-5c3ec83acafa","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615980.9964664} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3f2fb5edb59bcf817231cfcd4771a145","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c27e5e6b-712f-4ce3-833e-b66f47bd1ce3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615981.0008922} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"3f2fb5edb59bcf817231cfcd4771a145","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb59d5d8a-69da-4712-ae3f-9a4cd92f36a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"86940bd3-c73e-4afd-8d98-4d547816694b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615981.0118728} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a27c7191-f3ba-4e9b-ac1c-2debad488aa3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615981.0126257} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"3f2fb5edb59bcf817231cfcd4771a145","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb59d5d8a-69da-4712-ae3f-9a4cd92f36a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb59d5d8a-69da-4712-ae3f-9a4cd92f36a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:21.011825038Z"}]},"request_id":"6cf49a35-e86f-4ff4-a01c-63d6dcf10fa5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615981.016861} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3f2fb5edb59bcf817231cfcd4771a145","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3f2fb5edb59bcf817231cfcd4771a145"} gateway-1 | {"time_local":"02/Aug/2024:16:26:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3f2fb5edb59bcf817231cfcd4771a145"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"3f2fb5edb59bcf817231cfcd4771a145","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MX0.iJJZ8zKn-9PugnwKqGSfbl3bOsmOlzVCdlF53_AtlxY","level":"info","message":"auth send jwt","requestID":"b07917af302645db444af2df5784cd81"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b07917af302645db444af2df5784cd81","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b07917af302645db444af2df5784cd81"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1031,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1031,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.837025,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b07917af302645db444af2df5784cd81","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615981,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MX0.iJJZ8zKn-9PugnwKqGSfbl3bOsmOlzVCdlF53_AtlxY"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"b07917af302645db444af2df5784cd81","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9d402f-ee63-481d-ac60-3f82c9868047","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9d402f-ee63-481d-ac60-3f82c9868047","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:20.964120892Z"}]},"request_id":"def55779-e160-4370-9922-cde2351ea7ff","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615981.5286257} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b07917af302645db444af2df5784cd81","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e09d333c-99ce-4295-a4df-f4cccca7f86e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615981.536367} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"b07917af302645db444af2df5784cd81","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9d402f-ee63-481d-ac60-3f82c9868047","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9d402f-ee63-481d-ac60-3f82c9868047","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:20.964120892Z"}]},"request_id":"9026348d-537c-4d20-a5cc-e053abae872f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615981.5510623} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b07917af302645db444af2df5784cd81","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b07917af302645db444af2df5784cd81"} gateway-1 | {"time_local":"02/Aug/2024:16:26:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ce9d402f-ee63-481d-ac60-3f82c9868047 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.039","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"b07917af302645db444af2df5784cd81"} device-1 | {"level":"info","message":"PATCH /devices/ce9d402f-ee63-481d-ac60-3f82c9868047 200 35ms","method":"PATCH","requestID":"b07917af302645db444af2df5784cd81","responseTime":35,"status":200,"url":"/devices/ce9d402f-ee63-481d-ac60-3f82c9868047"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MX0.iJJZ8zKn-9PugnwKqGSfbl3bOsmOlzVCdlF53_AtlxY","level":"info","message":"auth send jwt","requestID":"1f13509e8b73e6638ce1f6c92e2d8c56"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1f13509e8b73e6638ce1f6c92e2d8c56","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1f13509e8b73e6638ce1f6c92e2d8c56"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1032,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:21Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1032,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.215569,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1f13509e8b73e6638ce1f6c92e2d8c56","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615981,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4MX0.iJJZ8zKn-9PugnwKqGSfbl3bOsmOlzVCdlF53_AtlxY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1f13509e8b73e6638ce1f6c92e2d8c56","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1f13509e8b73e6638ce1f6c92e2d8c56"} device-1 | {"level":"info","message":"POST /devices/ce9d402f-ee63-481d-ac60-3f82c9868047/websocket 200 18ms","method":"POST","requestID":"1f13509e8b73e6638ce1f6c92e2d8c56","responseTime":18,"status":200,"url":"/devices/ce9d402f-ee63-481d-ac60-3f82c9868047/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:26:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ce9d402f-ee63-481d-ac60-3f82c9868047/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"1f13509e8b73e6638ce1f6c92e2d8c56"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d1d9e195a6ac30ccbf84fcca9d70dcc4","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":"d1d9e195a6ac30ccbf84fcca9d70dcc4","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8/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":"d1d9e195a6ac30ccbf84fcca9d70dcc4"} device-1 | {"level":"info","message":"OPTIONS /devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8/websocket 200 1ms","method":"OPTIONS","requestID":"d1d9e195a6ac30ccbf84fcca9d70dcc4","responseTime":1,"status":200,"url":"/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw","level":"info","message":"auth send jwt","requestID":"2dad94afc853494833c54b8fc6f27d97"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2dad94afc853494833c54b8fc6f27d97","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2dad94afc853494833c54b8fc6f27d97"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1033,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1033,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.283556,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"2dad94afc853494833c54b8fc6f27d97","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615983,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2dad94afc853494833c54b8fc6f27d97","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2dad94afc853494833c54b8fc6f27d97"} gateway-1 | {"time_local":"02/Aug/2024:16:26:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8/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":"2dad94afc853494833c54b8fc6f27d97"} device-1 | {"level":"info","message":"POST /devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8/websocket 200 22ms","method":"POST","requestID":"2dad94afc853494833c54b8fc6f27d97","responseTime":22,"status":200,"url":"/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b2495934558bd81c52c32a1d1e962ace","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":"b2495934558bd81c52c32a1d1e962ace","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"b2495934558bd81c52c32a1d1e962ace"} device-1 | {"level":"info","message":"OPTIONS /devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8? 200 1ms","method":"OPTIONS","requestID":"b2495934558bd81c52c32a1d1e962ace","responseTime":1,"status":200,"url":"/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw","level":"info","message":"auth send jwt","requestID":"c6683d6e152167eb1b8b5c07b2d547ae"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"c6683d6e152167eb1b8b5c07b2d547ae","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c6683d6e152167eb1b8b5c07b2d547ae"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1034,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1034,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.616265,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c6683d6e152167eb1b8b5c07b2d547ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615983,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c6683d6e152167eb1b8b5c07b2d547ae","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb59d5d8a-69da-4712-ae3f-9a4cd92f36a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb59d5d8a-69da-4712-ae3f-9a4cd92f36a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:21.011825038Z"}]},"request_id":"da753bc6-3681-4f22-9736-da365d08f835","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.130867} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c6683d6e152167eb1b8b5c07b2d547ae","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"67649b7f-8d0f-4559-94f4-ee73cc6fe536","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.1389887} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"c6683d6e152167eb1b8b5c07b2d547ae","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb59d5d8a-69da-4712-ae3f-9a4cd92f36a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb59d5d8a-69da-4712-ae3f-9a4cd92f36a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:21.011825038Z"}]},"request_id":"468bfdda-06fa-4043-b3a4-e4b863e6f1df","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.1508918} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c6683d6e152167eb1b8b5c07b2d547ae","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c6683d6e152167eb1b8b5c07b2d547ae"} device-1 | {"level":"info","message":"PATCH /devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8? 200 38ms","method":"PATCH","requestID":"c6683d6e152167eb1b8b5c07b2d547ae","responseTime":38,"status":200,"url":"/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.047","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":"c6683d6e152167eb1b8b5c07b2d547ae"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw","level":"info","message":"auth send jwt","requestID":"1e8ce04b528fecc6476d5f4892883e8f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1e8ce04b528fecc6476d5f4892883e8f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1e8ce04b528fecc6476d5f4892883e8f"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1035,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1035,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.299496,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1e8ce04b528fecc6476d5f4892883e8f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615983,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1e8ce04b528fecc6476d5f4892883e8f","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9d402f-ee63-481d-ac60-3f82c9868047","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9d402f-ee63-481d-ac60-3f82c9868047","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:20.964120892Z"}]},"request_id":"54c18b71-26f3-48e6-95b9-43944c608fc7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.1787558} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1e8ce04b528fecc6476d5f4892883e8f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1e8ce04b528fecc6476d5f4892883e8f"} gateway-1 | {"time_local":"02/Aug/2024:16:26:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ce9d402f-ee63-481d-ac60-3f82c9868047? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1e8ce04b528fecc6476d5f4892883e8f"} device-1 | {"level":"info","message":"GET /devices/ce9d402f-ee63-481d-ac60-3f82c9868047? 200 16ms","method":"GET","requestID":"1e8ce04b528fecc6476d5f4892883e8f","responseTime":16,"status":200,"url":"/devices/ce9d402f-ee63-481d-ac60-3f82c9868047?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw","level":"info","message":"auth send jwt","requestID":"024f5fe36baee7b4c651f8ed1b44f1c1"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"024f5fe36baee7b4c651f8ed1b44f1c1","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"024f5fe36baee7b4c651f8ed1b44f1c1"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1036,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1036,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.246013,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"024f5fe36baee7b4c651f8ed1b44f1c1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615983,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"024f5fe36baee7b4c651f8ed1b44f1c1","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb59d5d8a-69da-4712-ae3f-9a4cd92f36a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb59d5d8a-69da-4712-ae3f-9a4cd92f36a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:21.011825038Z"}]},"request_id":"629a37f6-ceb2-4256-a862-bb09c64f7881","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.2027872} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"024f5fe36baee7b4c651f8ed1b44f1c1","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"024f5fe36baee7b4c651f8ed1b44f1c1"} gateway-1 | {"time_local":"02/Aug/2024:16:26:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"024f5fe36baee7b4c651f8ed1b44f1c1"} device-1 | {"level":"info","message":"GET /devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8? 200 16ms","method":"GET","requestID":"024f5fe36baee7b4c651f8ed1b44f1c1","responseTime":16,"status":200,"url":"/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw","level":"info","message":"auth send jwt","requestID":"64d03eba89afece82a38f8e63938fad6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"64d03eba89afece82a38f8e63938fad6","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"64d03eba89afece82a38f8e63938fad6"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1037,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1037,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.239346,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"64d03eba89afece82a38f8e63938fad6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615983,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"64d03eba89afece82a38f8e63938fad6","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/924b634d-6369-4f55-97d3-45ed02fb9f52"},"level":"info","message":"Attempting to run experiment","requestID":"64d03eba89afece82a38f8e63938fad6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/924b634d-6369-4f55-97d3-45ed02fb9f52"},"level":"info","message":"Attempting to book experiment","requestID":"64d03eba89afece82a38f8e63938fad6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/924b634d-6369-4f55-97d3-45ed02fb9f52"},"level":"info","message":"Successfully booked experiment","requestID":"64d03eba89afece82a38f8e63938fad6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f52bcdc0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f52bf4d0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1038,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1038,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.192629,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1039,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f52bcdc0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615983,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f52bcdc0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1039,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.263861,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f52bf4d0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615983,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f52bf4d0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9d402f-ee63-481d-ac60-3f82c9868047","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9d402f-ee63-481d-ac60-3f82c9868047","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:20.964120892Z"}]},"request_id":"06face53-903d-45f6-8fe7-a32e0cf64c73","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.272796} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f52bcdc0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb59d5d8a-69da-4712-ae3f-9a4cd92f36a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb59d5d8a-69da-4712-ae3f-9a4cd92f36a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:21.011825038Z"}]},"request_id":"143f26ce-ceea-4450-b721-0b79b9dc8628","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.2739506} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f52bf4d0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f52bcdc0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/ce9d402f-ee63-481d-ac60-3f82c9868047? 200 21ms","method":"GET","requestID":"f52bcdc0-50eb-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/devices/ce9d402f-ee63-481d-ac60-3f82c9868047?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f52bf4d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8? 200 21ms","method":"GET","requestID":"f52bf4d0-50eb-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/924b634d-6369-4f55-97d3-45ed02fb9f52"},"level":"info","message":"Setting up experiment","requestID":"64d03eba89afece82a38f8e63938fad6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/924b634d-6369-4f55-97d3-45ed02fb9f52"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"64d03eba89afece82a38f8e63938fad6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/924b634d-6369-4f55-97d3-45ed02fb9f52"},"level":"info","message":"Successfully locked booking for experiment","requestID":"64d03eba89afece82a38f8e63938fad6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/924b634d-6369-4f55-97d3-45ed02fb9f52"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"64d03eba89afece82a38f8e63938fad6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/924b634d-6369-4f55-97d3-45ed02fb9f52"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"64d03eba89afece82a38f8e63938fad6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/924b634d-6369-4f55-97d3-45ed02fb9f52"},"level":"info","message":"Attempting to update booking for experiment","requestID":"64d03eba89afece82a38f8e63938fad6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/924b634d-6369-4f55-97d3-45ed02fb9f52"},"level":"info","message":"Successfully updated booking for experiment","requestID":"64d03eba89afece82a38f8e63938fad6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/924b634d-6369-4f55-97d3-45ed02fb9f52"},"level":"info","message":"Successfully set up experiment","requestID":"64d03eba89afece82a38f8e63938fad6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f53bfa60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f53c4880-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f53c96a0-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/924b634d-6369-4f55-97d3-45ed02fb9f52"},"level":"info","message":"Successfully running experiment","requestID":"64d03eba89afece82a38f8e63938fad6"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1040,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1040,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.124806,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1041,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f53bfa60-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615983,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f53bfa60-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1041,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.063722,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f53c4880-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615983,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"f53c4880-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1042,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9d402f-ee63-481d-ac60-3f82c9868047","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"671c2544-fd17-4d14-a3e5-3c961003e147","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.3799164} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1042,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.676103,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f53c96a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047","object_type":"device","rebac_allow":false,"scope_allow":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":"f53c96a0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9d402f-ee63-481d-ac60-3f82c9868047","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9d402f-ee63-481d-ac60-3f82c9868047","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:20.964120892Z"}]},"request_id":"3dd9793d-e430-4401-8526-8da77bd3b56b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.3839262} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f53c96a0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"f53bfa60-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb59d5d8a-69da-4712-ae3f-9a4cd92f36a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb59d5d8a-69da-4712-ae3f-9a4cd92f36a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:21.011825038Z"}]},"request_id":"c32676e3-165a-4c05-b45c-166ffb53a391","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.388785} device-1 | {"level":"info","message":"POST /devices/ce9d402f-ee63-481d-ac60-3f82c9868047/signaling 200 20ms","method":"POST","requestID":"f53c96a0-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/ce9d402f-ee63-481d-ac60-3f82c9868047/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"f53c4880-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f5404020-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f53bfa60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/ce9d402f-ee63-481d-ac60-3f82c9868047? 200 35ms","method":"GET","requestID":"f53bfa60-50eb-11ef-8434-2f6d198c7397","responseTime":35,"status":200,"url":"/devices/ce9d402f-ee63-481d-ac60-3f82c9868047?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f53c4880-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8? 200 35ms","method":"GET","requestID":"f53c4880-50eb-11ef-8434-2f6d198c7397","responseTime":35,"status":200,"url":"/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1043,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb59d5d8a-69da-4712-ae3f-9a4cd92f36a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"16314dae-19b6-451f-8f19-187946613397","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.4026232} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F924b634d-6369-4f55-97d3-45ed02fb9f52#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F924b634d-6369-4f55-97d3-45ed02fb9f52","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"d28be475-5825-4a6e-a404-778047d51970","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.4034853} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1043,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.01117,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f5404020-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","object_type":"device","rebac_allow":false,"scope_allow":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":"f5404020-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f54214e0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e1f21bac-1832-4d28-9210-bda9b71beaa7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.4044392} authorization-1 | {"level":"info","message":"POST /relations/update 200 32ms","method":"POST","requestID":"64d03eba89afece82a38f8e63938fad6","responseTime":32,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1044,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f5404020-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8/signaling 200 19ms","method":"POST","requestID":"f5404020-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9d402f-ee63-481d-ac60-3f82c9868047","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c493a857-7cd1-4421-ae1d-ace82b4a77e8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.4142597} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1044,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.265077,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f54214e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047","object_type":"device","rebac_allow":false,"scope_allow":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":"f54214e0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/924b634d-6369-4f55-97d3-45ed02fb9f52","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"64d03eba89afece82a38f8e63938fad6"} gateway-1 | {"time_local":"02/Aug/2024:16:26:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.210","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"64d03eba89afece82a38f8e63938fad6"} experiment-1 | {"level":"info","message":"POST /experiments? 201 205ms","method":"POST","requestID":"64d03eba89afece82a38f8e63938fad6","responseTime":205,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f54214e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/ce9d402f-ee63-481d-ac60-3f82c9868047/signaling 200 14ms","method":"POST","requestID":"f54214e0-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/ce9d402f-ee63-481d-ac60-3f82c9868047/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f544acf0-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw","level":"info","message":"auth send jwt","requestID":"a7d80da0282264543099692fde1682b1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a7d80da0282264543099692fde1682b1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a7d80da0282264543099692fde1682b1"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1045,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1046,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb59d5d8a-69da-4712-ae3f-9a4cd92f36a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"68ca7bb6-a9b6-46d3-b823-5d835a895543","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.4283063} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1045,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.025773,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1046,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.925045,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f544acf0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","object_type":"device","rebac_allow":false,"scope_allow":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":"f544acf0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a7d80da0282264543099692fde1682b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615983,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a7d80da0282264543099692fde1682b1","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f544acf0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8/signaling 200 12ms","method":"POST","requestID":"f544acf0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8/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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9d402f-ee63-481d-ac60-3f82c9868047","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9d402f-ee63-481d-ac60-3f82c9868047","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:20.964120892Z"}]},"request_id":"be8e8f1a-9063-43ea-8a31-6d48c58d2985","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.4363112} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/924b634d-6369-4f55-97d3-45ed02fb9f52"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"64d03eba89afece82a38f8e63938fad6"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a7d80da0282264543099692fde1682b1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f546f6e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f5471df0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a7d80da0282264543099692fde1682b1"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1047,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1047,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.771894,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1048,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} device-1 | {"level":"info","message":"GET /devices/ce9d402f-ee63-481d-ac60-3f82c9868047? 200 18ms","method":"GET","requestID":"a7d80da0282264543099692fde1682b1","responseTime":18,"status":200,"url":"/devices/ce9d402f-ee63-481d-ac60-3f82c9868047?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ce9d402f-ee63-481d-ac60-3f82c9868047? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a7d80da0282264543099692fde1682b1"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f546f6e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615983,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f546f6e0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1048,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.887062,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f5471df0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615983,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f5471df0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw","level":"info","message":"auth send jwt","requestID":"2755934beb2ab3c49fd0b184c2581ce9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2755934beb2ab3c49fd0b184c2581ce9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2755934beb2ab3c49fd0b184c2581ce9"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9d402f-ee63-481d-ac60-3f82c9868047","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9d402f-ee63-481d-ac60-3f82c9868047","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:20.964120892Z"}]},"request_id":"849171a7-357c-4c31-b384-0e32ddeea4d7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.4493327} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f546f6e0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb59d5d8a-69da-4712-ae3f-9a4cd92f36a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb59d5d8a-69da-4712-ae3f-9a4cd92f36a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:21.011825038Z"}]},"request_id":"4fd34eac-753e-4b5d-80a5-ab15bf13b68a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.4507504} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"f5471df0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1049,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1049,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.890806,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"2755934beb2ab3c49fd0b184c2581ce9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615983,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2755934beb2ab3c49fd0b184c2581ce9","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f546f6e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/ce9d402f-ee63-481d-ac60-3f82c9868047? 200 18ms","method":"GET","requestID":"f546f6e0-50eb-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/ce9d402f-ee63-481d-ac60-3f82c9868047?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f5471df0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8? 200 20ms","method":"GET","requestID":"f5471df0-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb59d5d8a-69da-4712-ae3f-9a4cd92f36a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb59d5d8a-69da-4712-ae3f-9a4cd92f36a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:21.011825038Z"}]},"request_id":"b355c960-155b-40f3-a79d-d2ee6e2a28aa","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.4603295} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/924b634d-6369-4f55-97d3-45ed02fb9f52"},"level":"info","message":"Building connection plan","requestID":"64d03eba89afece82a38f8e63938fad6"} 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":"4ce4c0c2-105b-48c7-90f9-c8687f8203d0"},{"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":"94123172-09e4-4b8c-a662-c99120e9333a"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"0b174d6f-a73e-4802-92f1-40f604cf6ec6"}]},"level":"info","message":"Built pairwise service configurations","requestID":"64d03eba89afece82a38f8e63938fad6"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2755934beb2ab3c49fd0b184c2581ce9","responseTime":3,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"f54aa060-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"f54aa060-50eb-11ef-a432-47ab85bb6d58"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2755934beb2ab3c49fd0b184c2581ce9"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"f54aa060-50eb-11ef-a432-47ab85bb6d58","responseTime":1,"status":201,"url":"/rooms"} gateway-1 | {"time_local":"02/Aug/2024:16:26:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2755934beb2ab3c49fd0b184c2581ce9"} device-1 | {"level":"info","message":"GET /devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8? 200 15ms","method":"GET","requestID":"2755934beb2ab3c49fd0b184c2581ce9","responseTime":15,"status":200,"url":"/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/a083e28e-fc05-45dc-854b-7d709c42bb0a?id=6f634756-43ab-4795-8b16-40a62e2de2f7","ws://localhost/rooms/a083e28e-fc05-45dc-854b-7d709c42bb0a?id=38aa4d46-4b50-482f-9793-968d25f0e20a"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"64d03eba89afece82a38f8e63938fad6"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f54b3ca0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1050,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1050,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.748771,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f54b3ca0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615983,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f54b3ca0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"28831c68-82dd-44ec-ba56-60ae65fd287d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.4796054} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d48e6562-3593-48f7-9cd2-7f5d1afad1a8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.479967} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f54b3ca0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f54b3ca0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f54b3ca0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/ec777e8c-f3e0-4050-b311-83c603e61335'","requestID":"f54b3ca0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/ec777e8c-f3e0-4050-b311-83c603e61335'","requestID":"f54b3ca0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f54b3ca0-50eb-11ef-8434-2f6d198c7397"} 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":"f54b3ca0-50eb-11ef-8434-2f6d198c7397","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":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"f54b3ca0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ec777e8c-f3e0-4050-b311-83c603e61335' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ec777e8c-f3e0-4050-b311-83c603e61335","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f5515720-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"38aa4d46-4b50-482f-9793-968d25f0e20a\" in room \"http://localhost/rooms/a083e28e-fc05-45dc-854b-7d709c42bb0a\"","requestID":"f5515720-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f5515720-50eb-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e25d42dacbaaa9e3711ee13622d0773f","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)"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f551a540-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"6f634756-43ab-4795-8b16-40a62e2de2f7\" in room \"http://localhost/rooms/a083e28e-fc05-45dc-854b-7d709c42bb0a\"","requestID":"f551a540-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f551a540-50eb-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e25d42dacbaaa9e3711ee13622d0773f","responseTime":2,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"6f634756-43ab-4795-8b16-40a62e2de2f7\" in room \"http://localhost/rooms/a083e28e-fc05-45dc-854b-7d709c42bb0a\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"6f634756-43ab-4795-8b16-40a62e2de2f7\" in room \"http://localhost/rooms/a083e28e-fc05-45dc-854b-7d709c42bb0a\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"6f634756-43ab-4795-8b16-40a62e2de2f7\" in room \"http://localhost/rooms/a083e28e-fc05-45dc-854b-7d709c42bb0a\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"6f634756-43ab-4795-8b16-40a62e2de2f7\" in room \"http://localhost/rooms/a083e28e-fc05-45dc-854b-7d709c42bb0a\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"6f634756-43ab-4795-8b16-40a62e2de2f7\" in room \"http://localhost/rooms/a083e28e-fc05-45dc-854b-7d709c42bb0a\""} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/ec777e8c-f3e0-4050-b311-83c603e61335"}}},"level":"info","message":"received a callback","requestID":"e25d42dacbaaa9e3711ee13622d0773f"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"6f634756-43ab-4795-8b16-40a62e2de2f7\" in room \"http://localhost/rooms/a083e28e-fc05-45dc-854b-7d709c42bb0a\""} device-1 | {"data":{"peerconnection":"ec777e8c-f3e0-4050-b311-83c603e61335","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"e25d42dacbaaa9e3711ee13622d0773f","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:23 +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":"e25d42dacbaaa9e3711ee13622d0773f"} device-1 | {"data":{"peerconnection":"ec777e8c-f3e0-4050-b311-83c603e61335","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/924b634d-6369-4f55-97d3-45ed02fb9f52"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"64d03eba89afece82a38f8e63938fad6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f556d560-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1051,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ec777e8c-f3e0-4050-b311-83c603e61335' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ec777e8c-f3e0-4050-b311-83c603e61335","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9d402f-ee63-481d-ac60-3f82c9868047","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"89a87fe4-e8de-4915-be56-b9645e00940a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.5467494} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1051,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.572062,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9a114bbde6787d0969585340aa14abb3","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 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f556d560-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047","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 1ms","method":"GET","requestID":"9a114bbde6787d0969585340aa14abb3","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f556d560-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/ec777e8c-f3e0-4050-b311-83c603e61335"}}},"level":"info","message":"received a callback","requestID":"9a114bbde6787d0969585340aa14abb3"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"f5599480-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f556d560-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/ce9d402f-ee63-481d-ac60-3f82c9868047/signaling 200 20ms","method":"POST","requestID":"f556d560-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/ce9d402f-ee63-481d-ac60-3f82c9868047/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1052,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f55a57d0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fec777e8c-f3e0-4050-b311-83c603e61335","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7c2115cb-d850-488d-a3c7-f6e429f57661","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.566448} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1052,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.898513,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1053,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ec777e8c-f3e0-4050-b311-83c603e61335","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f5599480-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/ec777e8c-f3e0-4050-b311-83c603e61335","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":"f5599480-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb59d5d8a-69da-4712-ae3f-9a4cd92f36a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9463c20c-317d-4c73-91c9-6949a63d5833","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.5699368} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1053,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.60503,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"f5599480-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f55a57d0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","object_type":"device","rebac_allow":false,"scope_allow":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":"f55a57d0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /peerconnections/ec777e8c-f3e0-4050-b311-83c603e61335 200 12ms","method":"GET","requestID":"f5599480-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/peerconnections/ec777e8c-f3e0-4050-b311-83c603e61335"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f55a57d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8/signaling 200 10ms","method":"POST","requestID":"f55a57d0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 43ms","method":"POST","requestID":"9a114bbde6787d0969585340aa14abb3","responseTime":43,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:23 +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":"9a114bbde6787d0969585340aa14abb3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f55ec4a0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1054,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb59d5d8a-69da-4712-ae3f-9a4cd92f36a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ea4dd40d-1be9-428c-8e2b-dd024b5b9f54","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.5992591} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1054,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.271074,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f55ec4a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","object_type":"device","rebac_allow":false,"scope_allow":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":"f55ec4a0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f55ec4a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8/signaling 200 10ms","method":"POST","requestID":"f55ec4a0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f5609960-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1055,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9d402f-ee63-481d-ac60-3f82c9868047","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"73a1e799-283a-482e-b655-6dd472c68b98","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.6121645} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1055,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.649473,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f5609960-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047","object_type":"device","rebac_allow":false,"scope_allow":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":"f5609960-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f5609960-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/ce9d402f-ee63-481d-ac60-3f82c9868047/signaling 200 11ms","method":"POST","requestID":"f5609960-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/ce9d402f-ee63-481d-ac60-3f82c9868047/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw","level":"info","message":"auth send jwt","requestID":"74bf16fd6c8671e0cfbc33fbb3a4b2eb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"74bf16fd6c8671e0cfbc33fbb3a4b2eb","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/924b634d-6369-4f55-97d3-45ed02fb9f52","requestID":"74bf16fd6c8671e0cfbc33fbb3a4b2eb"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1056,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1056,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.902858,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/924b634d-6369-4f55-97d3-45ed02fb9f52","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"74bf16fd6c8671e0cfbc33fbb3a4b2eb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/924b634d-6369-4f55-97d3-45ed02fb9f52","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615983,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"74bf16fd6c8671e0cfbc33fbb3a4b2eb","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/924b634d-6369-4f55-97d3-45ed02fb9f52","requestID":"74bf16fd6c8671e0cfbc33fbb3a4b2eb"} experiment-1 | {"level":"info","message":"GET /experiments/924b634d-6369-4f55-97d3-45ed02fb9f52 200 12ms","method":"GET","requestID":"74bf16fd6c8671e0cfbc33fbb3a4b2eb","responseTime":12,"status":200,"url":"/experiments/924b634d-6369-4f55-97d3-45ed02fb9f52"} gateway-1 | {"time_local":"02/Aug/2024:16:26:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/924b634d-6369-4f55-97d3-45ed02fb9f52 HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"74bf16fd6c8671e0cfbc33fbb3a4b2eb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw","level":"info","message":"auth send jwt","requestID":"449f45eb4cce5e498e9d3dfa1bea3a40"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"449f45eb4cce5e498e9d3dfa1bea3a40","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/924b634d-6369-4f55-97d3-45ed02fb9f52","requestID":"449f45eb4cce5e498e9d3dfa1bea3a40"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1057,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1057,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.770991,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/924b634d-6369-4f55-97d3-45ed02fb9f52","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"449f45eb4cce5e498e9d3dfa1bea3a40","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/924b634d-6369-4f55-97d3-45ed02fb9f52","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615983,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"449f45eb4cce5e498e9d3dfa1bea3a40","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/924b634d-6369-4f55-97d3-45ed02fb9f52"},"level":"info","message":"Attempting to finish experiment","requestID":"449f45eb4cce5e498e9d3dfa1bea3a40"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"f5675020-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1058,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1058,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.998762,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ec777e8c-f3e0-4050-b311-83c603e61335","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f5675020-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/ec777e8c-f3e0-4050-b311-83c603e61335","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615983,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f5675020-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:26:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/a083e28e-fc05-45dc-854b-7d709c42bb0a?id=38aa4d46-4b50-482f-9793-968d25f0e20a HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.157","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"196ce9ed076d7fa5d99adbf7d9f478eb"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"38aa4d46-4b50-482f-9793-968d25f0e20a\" in room \"http://localhost/rooms/a083e28e-fc05-45dc-854b-7d709c42bb0a\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"38aa4d46-4b50-482f-9793-968d25f0e20a\" from room \"http://localhost/rooms/a083e28e-fc05-45dc-854b-7d709c42bb0a\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ec777e8c-f3e0-4050-b311-83c603e61335","device":"b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"02/Aug/2024:16:26:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/a083e28e-fc05-45dc-854b-7d709c42bb0a?id=6f634756-43ab-4795-8b16-40a62e2de2f7 HTTP/1.1","status": "101","body_bytes_sent":"918","request_time":"0.156","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":"2e3aed7ed7b148c9ecb8e4721400555b"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ec777e8c-f3e0-4050-b311-83c603e61335' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/ec777e8c-f3e0-4050-b311-83c603e61335' to 'http://localhost/callbacks/experiment'"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"6f634756-43ab-4795-8b16-40a62e2de2f7\" in room \"http://localhost/rooms/a083e28e-fc05-45dc-854b-7d709c42bb0a\""} device-1 | {"data":{"peerconnection":"ec777e8c-f3e0-4050-b311-83c603e61335","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"6f634756-43ab-4795-8b16-40a62e2de2f7\" from room \"http://localhost/rooms/a083e28e-fc05-45dc-854b-7d709c42bb0a\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8b4b1ef17ed53d99d8c2811865c8f7c2","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":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fec777e8c-f3e0-4050-b311-83c603e61335': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fec777e8c-f3e0-4050-b311-83c603e61335","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"9d263d17-5ed9-4aed-803a-cc96f2a03069","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.6670487} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8b4b1ef17ed53d99d8c2811865c8f7c2","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"99405a81-4d60-43d9-bd16-7829f450c38f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.667454} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1d08bdab010bbbbd52023612763bc84e","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/ec777e8c-f3e0-4050-b311-83c603e61335"}}},"level":"info","message":"received a callback","requestID":"8b4b1ef17ed53d99d8c2811865c8f7c2"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1d08bdab010bbbbd52023612763bc84e","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"f5675020-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/relations/update"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/ec777e8c-f3e0-4050-b311-83c603e61335"}}},"level":"info","message":"received a callback","requestID":"1d08bdab010bbbbd52023612763bc84e"} device-1 | {"data":{"peerconnection":"ec777e8c-f3e0-4050-b311-83c603e61335","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"f5675020-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/ec777e8c-f3e0-4050-b311-83c603e61335 204 39ms","method":"DELETE","requestID":"f5675020-50eb-11ef-8434-2f6d198c7397","responseTime":39,"status":204,"url":"/peerconnections/ec777e8c-f3e0-4050-b311-83c603e61335"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/924b634d-6369-4f55-97d3-45ed02fb9f52"},"level":"info","message":"Successfully finished experiment","requestID":"449f45eb4cce5e498e9d3dfa1bea3a40"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f57050d0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1059,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb59d5d8a-69da-4712-ae3f-9a4cd92f36a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ecc45982-693d-4ab4-a130-0f4c350188aa","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.7151961} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1059,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.271626,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f57050d0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8","object_type":"device","rebac_allow":false,"scope_allow":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":"f57050d0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F924b634d-6369-4f55-97d3-45ed02fb9f52': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F924b634d-6369-4f55-97d3-45ed02fb9f52","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"1408e40e-3de7-4e30-8678-64e9fa418fe6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.7177644} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"01cbed89-94ba-4403-8898-190393a5f9b5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.7179945} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"449f45eb4cce5e498e9d3dfa1bea3a40","responseTime":13,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f57050d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8/signaling 200 13ms","method":"POST","requestID":"f57050d0-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f572c1d0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1060,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce9d402f-ee63-481d-ac60-3f82c9868047","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"79088b9e-90c5-4d32-981d-ebdb7340ce82","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.730625} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1060,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.296851,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f572c1d0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047","object_type":"device","rebac_allow":false,"scope_allow":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":"f572c1d0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f572c1d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/ce9d402f-ee63-481d-ac60-3f82c9868047/signaling 200 10ms","method":"POST","requestID":"f572c1d0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/ce9d402f-ee63-481d-ac60-3f82c9868047/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/924b634d-6369-4f55-97d3-45ed02fb9f52","requestID":"449f45eb4cce5e498e9d3dfa1bea3a40"} gateway-1 | {"time_local":"02/Aug/2024:16:26:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/924b634d-6369-4f55-97d3-45ed02fb9f52 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.144","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"449f45eb4cce5e498e9d3dfa1bea3a40"} gateway-1 | {"time_local":"02/Aug/2024:16:26:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1783","request_time":"2.199","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"1b1b42a6d69a9b2587e929f4ab7dcc9d"} experiment-1 | {"level":"info","message":"DELETE /experiments/924b634d-6369-4f55-97d3-45ed02fb9f52 204 140ms","method":"DELETE","requestID":"449f45eb4cce5e498e9d3dfa1bea3a40","responseTime":140,"status":204,"url":"/experiments/924b634d-6369-4f55-97d3-45ed02fb9f52"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 113ms","method":"POST","requestID":"8b4b1ef17ed53d99d8c2811865c8f7c2","responseTime":113,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:23 +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":"8b4b1ef17ed53d99d8c2811865c8f7c2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 112ms","method":"POST","requestID":"1d08bdab010bbbbd52023612763bc84e","responseTime":112,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:23 +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.116","http_referrer":"","http_user_agent":"node-fetch","requestID":"1d08bdab010bbbbd52023612763bc84e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw","level":"info","message":"auth send jwt","requestID":"204fbbcc6aab074bfa983c195c3ac66e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"204fbbcc6aab074bfa983c195c3ac66e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"204fbbcc6aab074bfa983c195c3ac66e"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1061,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} gateway-1 | {"time_local":"02/Aug/2024:16:26:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2106","request_time":"0.720","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":"c50998fa68ddcbe43226b352258de56d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1061,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":6.668634,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"204fbbcc6aab074bfa983c195c3ac66e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615983,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"204fbbcc6aab074bfa983c195c3ac66e","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ce9d402f-ee63-481d-ac60-3f82c9868047' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6549164b-f041-4791-8723-ac7e1080778b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"61e57fe0-4fc3-4358-995e-b21425c1cc90","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.8120582} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"204fbbcc6aab074bfa983c195c3ac66e","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/b59d5d8a-69da-4712-ae3f-9a4cd92f36a8' 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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3fdae453-c498-4623-927f-0bba375e6da6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.8174717} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"204fbbcc6aab074bfa983c195c3ac66e","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6549164b-f041-4791-8723-ac7e1080778b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"2b624185-95b7-4444-b4d2-f5eee6183a66","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.8270338} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"24f5720d-a9cd-42a9-95a0-1232a0f3299b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.8271768} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"204fbbcc6aab074bfa983c195c3ac66e","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6549164b-f041-4791-8723-ac7e1080778b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6549164b-f041-4791-8723-ac7e1080778b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:23.826999550Z"}]},"request_id":"8e32b7ad-3be8-49a9-ab24-c4d9bbe786ac","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.8310797} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"204fbbcc6aab074bfa983c195c3ac66e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"204fbbcc6aab074bfa983c195c3ac66e"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"204fbbcc6aab074bfa983c195c3ac66e","responseTime":47,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"204fbbcc6aab074bfa983c195c3ac66e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw","level":"info","message":"auth send jwt","requestID":"bbd0d812a1b88c415f88c186e05cde86"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bbd0d812a1b88c415f88c186e05cde86","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"bbd0d812a1b88c415f88c186e05cde86"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1062,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1062,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.678933,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bbd0d812a1b88c415f88c186e05cde86","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615983,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4M30.5FErJ06SDoCQ1OF24DZ6w7WBAr1D8nWu5NNmfHYxWUw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bbd0d812a1b88c415f88c186e05cde86","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94cb550f-665a-4a5e-af78-b80827d77d93","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1372de3a-19ca-4ac0-ba1b-03a967f8ba54","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.8601744} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bbd0d812a1b88c415f88c186e05cde86","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"17e65269-6250-4308-b637-693bbc283df2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.8644671} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"bbd0d812a1b88c415f88c186e05cde86","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94cb550f-665a-4a5e-af78-b80827d77d93","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"23c07112-a8c2-4580-bd6b-e51928642fa3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.876258} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aa8b47a2-896d-4754-9b12-be86b7c9e314","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.8765502} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"bbd0d812a1b88c415f88c186e05cde86","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94cb550f-665a-4a5e-af78-b80827d77d93","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94cb550f-665a-4a5e-af78-b80827d77d93","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:23.876222537Z"}]},"request_id":"13b05f1d-35ec-4096-908c-30de0d80b524","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615983.8813756} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bbd0d812a1b88c415f88c186e05cde86","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"bbd0d812a1b88c415f88c186e05cde86"} gateway-1 | {"time_local":"02/Aug/2024:16:26:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bbd0d812a1b88c415f88c186e05cde86"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"bbd0d812a1b88c415f88c186e05cde86","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524","level":"info","message":"auth send jwt","requestID":"0f3f26629d54e4e0fa3f54c72166c409"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"0f3f26629d54e4e0fa3f54c72166c409","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524","level":"info","message":"auth send jwt","requestID":"1e0264d9ddf6ce0c16a68a7b46578f89"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1e0264d9ddf6ce0c16a68a7b46578f89","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"0f3f26629d54e4e0fa3f54c72166c409"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"1e0264d9ddf6ce0c16a68a7b46578f89"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1063,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1063,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.614147,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1064,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0f3f26629d54e4e0fa3f54c72166c409","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615984,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0f3f26629d54e4e0fa3f54c72166c409","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1064,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.507715,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1e0264d9ddf6ce0c16a68a7b46578f89","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615984,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1e0264d9ddf6ce0c16a68a7b46578f89","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6549164b-f041-4791-8723-ac7e1080778b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6549164b-f041-4791-8723-ac7e1080778b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:23.826999550Z"}]},"request_id":"3634fb02-30a1-41c4-afd0-53fa36f16ac1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.3879704} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0f3f26629d54e4e0fa3f54c72166c409","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94cb550f-665a-4a5e-af78-b80827d77d93","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94cb550f-665a-4a5e-af78-b80827d77d93","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:23.876222537Z"}]},"request_id":"99beee71-4c74-404c-992c-fb0e57a38462","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.388629} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1e0264d9ddf6ce0c16a68a7b46578f89","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0d042e0b-de19-43b5-9c0f-2822205d1bbc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.3928132} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"0f3f26629d54e4e0fa3f54c72166c409","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"120e7d56-8753-478b-b27f-67879029ee77","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.3949163} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1e0264d9ddf6ce0c16a68a7b46578f89","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94cb550f-665a-4a5e-af78-b80827d77d93","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94cb550f-665a-4a5e-af78-b80827d77d93","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:23.876222537Z"}]},"request_id":"eae9ca39-51fd-4cd0-af00-9e8d8c1bcc00","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.3992624} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1e0264d9ddf6ce0c16a68a7b46578f89","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"1e0264d9ddf6ce0c16a68a7b46578f89"} gateway-1 | {"time_local":"02/Aug/2024:16:26:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/94cb550f-665a-4a5e-af78-b80827d77d93 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.029","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"1e0264d9ddf6ce0c16a68a7b46578f89"} device-1 | {"level":"info","message":"PATCH /devices/94cb550f-665a-4a5e-af78-b80827d77d93 200 22ms","method":"PATCH","requestID":"1e0264d9ddf6ce0c16a68a7b46578f89","responseTime":22,"status":200,"url":"/devices/94cb550f-665a-4a5e-af78-b80827d77d93"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524","level":"info","message":"auth send jwt","requestID":"97b2eecf9f4dced2a627862991ef6f9a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"97b2eecf9f4dced2a627862991ef6f9a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"97b2eecf9f4dced2a627862991ef6f9a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6549164b-f041-4791-8723-ac7e1080778b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6549164b-f041-4791-8723-ac7e1080778b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:23.826999550Z"}]},"request_id":"7fe97e8a-4042-4f9c-aadb-c673ef49806e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.4096625} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0f3f26629d54e4e0fa3f54c72166c409","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1065,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1065,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.074622,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"0f3f26629d54e4e0fa3f54c72166c409"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"97b2eecf9f4dced2a627862991ef6f9a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615984,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524"} gateway-1 | {"time_local":"02/Aug/2024:16:26:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6549164b-f041-4791-8723-ac7e1080778b HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"0f3f26629d54e4e0fa3f54c72166c409"} device-1 | {"level":"info","message":"PATCH /devices/6549164b-f041-4791-8723-ac7e1080778b 200 34ms","method":"PATCH","requestID":"0f3f26629d54e4e0fa3f54c72166c409","responseTime":34,"status":200,"url":"/devices/6549164b-f041-4791-8723-ac7e1080778b"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"97b2eecf9f4dced2a627862991ef6f9a","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524","level":"info","message":"auth send jwt","requestID":"05a7a4f53cf48b81139f6c81426e8659"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"05a7a4f53cf48b81139f6c81426e8659","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"05a7a4f53cf48b81139f6c81426e8659"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1066,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1066,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.1137,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"05a7a4f53cf48b81139f6c81426e8659","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615984,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"05a7a4f53cf48b81139f6c81426e8659","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"97b2eecf9f4dced2a627862991ef6f9a"} gateway-1 | {"time_local":"02/Aug/2024:16:26:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/94cb550f-665a-4a5e-af78-b80827d77d93/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"97b2eecf9f4dced2a627862991ef6f9a"} device-1 | {"level":"info","message":"POST /devices/94cb550f-665a-4a5e-af78-b80827d77d93/websocket 200 19ms","method":"POST","requestID":"97b2eecf9f4dced2a627862991ef6f9a","responseTime":19,"status":200,"url":"/devices/94cb550f-665a-4a5e-af78-b80827d77d93/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"05a7a4f53cf48b81139f6c81426e8659"} gateway-1 | {"time_local":"02/Aug/2024:16:26:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6549164b-f041-4791-8723-ac7e1080778b/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"05a7a4f53cf48b81139f6c81426e8659"} device-1 | {"level":"info","message":"POST /devices/6549164b-f041-4791-8723-ac7e1080778b/websocket 200 17ms","method":"POST","requestID":"05a7a4f53cf48b81139f6c81426e8659","responseTime":17,"status":200,"url":"/devices/6549164b-f041-4791-8723-ac7e1080778b/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524","level":"info","message":"auth send jwt","requestID":"000610a849fba8166ab966e8fdc59deb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"000610a849fba8166ab966e8fdc59deb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"000610a849fba8166ab966e8fdc59deb"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1067,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1067,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.041203,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"000610a849fba8166ab966e8fdc59deb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615984,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"000610a849fba8166ab966e8fdc59deb","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6549164b-f041-4791-8723-ac7e1080778b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6549164b-f041-4791-8723-ac7e1080778b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:23.826999550Z"}]},"request_id":"95446531-5d13-4289-aad8-3ce9f1443e22","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.4682038} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"000610a849fba8166ab966e8fdc59deb","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"000610a849fba8166ab966e8fdc59deb"} gateway-1 | {"time_local":"02/Aug/2024:16:26:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6549164b-f041-4791-8723-ac7e1080778b? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"000610a849fba8166ab966e8fdc59deb"} device-1 | {"level":"info","message":"GET /devices/6549164b-f041-4791-8723-ac7e1080778b? 200 13ms","method":"GET","requestID":"000610a849fba8166ab966e8fdc59deb","responseTime":13,"status":200,"url":"/devices/6549164b-f041-4791-8723-ac7e1080778b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524","level":"info","message":"auth send jwt","requestID":"77eeab4300a840b70fabf081fd561ab2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"77eeab4300a840b70fabf081fd561ab2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"77eeab4300a840b70fabf081fd561ab2"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1068,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1068,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.641637,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"77eeab4300a840b70fabf081fd561ab2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615984,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"77eeab4300a840b70fabf081fd561ab2","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94cb550f-665a-4a5e-af78-b80827d77d93","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94cb550f-665a-4a5e-af78-b80827d77d93","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:23.876222537Z"}]},"request_id":"eeeae9b0-88b1-4f02-9596-2a808d399b27","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.4881864} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"77eeab4300a840b70fabf081fd561ab2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"77eeab4300a840b70fabf081fd561ab2"} gateway-1 | {"time_local":"02/Aug/2024:16:26:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/94cb550f-665a-4a5e-af78-b80827d77d93? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"77eeab4300a840b70fabf081fd561ab2"} device-1 | {"level":"info","message":"GET /devices/94cb550f-665a-4a5e-af78-b80827d77d93? 200 13ms","method":"GET","requestID":"77eeab4300a840b70fabf081fd561ab2","responseTime":13,"status":200,"url":"/devices/94cb550f-665a-4a5e-af78-b80827d77d93?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524","level":"info","message":"auth send jwt","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1069,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1069,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.230629,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bef4df7dfe9f04d5c363f0e2cc015d05","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615984,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9c49e7fe-f546-4456-b9a2-028aed41574b"},"level":"info","message":"Attempting to run experiment","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9c49e7fe-f546-4456-b9a2-028aed41574b"},"level":"info","message":"Attempting to book experiment","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9c49e7fe-f546-4456-b9a2-028aed41574b"},"level":"info","message":"Successfully booked experiment","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f5ef92f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f5efe110-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1070,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1070,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.25599,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1071,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f5ef92f0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615984,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f5ef92f0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1071,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.87068,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f5efe110-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615984,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f5efe110-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6549164b-f041-4791-8723-ac7e1080778b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6549164b-f041-4791-8723-ac7e1080778b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:23.826999550Z"}]},"request_id":"47395bce-ce0f-4c36-9eba-d35c1b7e73cc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.5535324} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f5ef92f0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94cb550f-665a-4a5e-af78-b80827d77d93","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94cb550f-665a-4a5e-af78-b80827d77d93","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:23.876222537Z"}]},"request_id":"204ecd52-4d5c-4a57-9e8b-17e8bcb32bb6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.5541725} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f5efe110-50eb-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f5ef92f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/6549164b-f041-4791-8723-ac7e1080778b? 200 15ms","method":"GET","requestID":"f5ef92f0-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/6549164b-f041-4791-8723-ac7e1080778b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f5efe110-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/94cb550f-665a-4a5e-af78-b80827d77d93? 200 14ms","method":"GET","requestID":"f5efe110-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/94cb550f-665a-4a5e-af78-b80827d77d93?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9c49e7fe-f546-4456-b9a2-028aed41574b"},"level":"info","message":"Setting up experiment","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9c49e7fe-f546-4456-b9a2-028aed41574b"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9c49e7fe-f546-4456-b9a2-028aed41574b"},"level":"info","message":"Successfully locked booking for experiment","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9c49e7fe-f546-4456-b9a2-028aed41574b"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9c49e7fe-f546-4456-b9a2-028aed41574b"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9c49e7fe-f546-4456-b9a2-028aed41574b"},"level":"info","message":"Attempting to update booking for experiment","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9c49e7fe-f546-4456-b9a2-028aed41574b"},"level":"info","message":"Successfully updated booking for experiment","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9c49e7fe-f546-4456-b9a2-028aed41574b"},"level":"info","message":"Successfully set up experiment","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f5fa1a40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f5fa6860-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9c49e7fe-f546-4456-b9a2-028aed41574b"},"level":"info","message":"Successfully running experiment","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f5fab680-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1072,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1072,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.34356,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1073,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f5fa1a40-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615984,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f5fa1a40-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1073,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.959888,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f5fa6860-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615984,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"f5fa6860-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1074,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6549164b-f041-4791-8723-ac7e1080778b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"41547bac-9df1-4a01-9b82-c3c844c9448f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.624114} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1074,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.338531,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f5fab680-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b","object_type":"device","rebac_allow":false,"scope_allow":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":"f5fab680-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6549164b-f041-4791-8723-ac7e1080778b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6549164b-f041-4791-8723-ac7e1080778b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:23.826999550Z"}]},"request_id":"f5622089-01af-4dab-89d9-29ae8e36df33","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.6267717} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f5fab680-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"f5fa1a40-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94cb550f-665a-4a5e-af78-b80827d77d93","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94cb550f-665a-4a5e-af78-b80827d77d93","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:23.876222537Z"}]},"request_id":"4c5259bb-e1b3-440e-a1d2-da29c667bff6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.6303413} device-1 | {"level":"info","message":"POST /devices/6549164b-f041-4791-8723-ac7e1080778b/signaling 200 15ms","method":"POST","requestID":"f5fab680-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/6549164b-f041-4791-8723-ac7e1080778b/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f5fa6860-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f5fd75a0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1075,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f5fa1a40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/6549164b-f041-4791-8723-ac7e1080778b? 200 26ms","method":"GET","requestID":"f5fa1a40-50eb-11ef-8434-2f6d198c7397","responseTime":26,"status":200,"url":"/devices/6549164b-f041-4791-8723-ac7e1080778b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f5fa6860-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/94cb550f-665a-4a5e-af78-b80827d77d93? 200 26ms","method":"GET","requestID":"f5fa6860-50eb-11ef-8434-2f6d198c7397","responseTime":26,"status":200,"url":"/devices/94cb550f-665a-4a5e-af78-b80827d77d93?"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94cb550f-665a-4a5e-af78-b80827d77d93","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"916bf27c-7c72-4bb5-8eb9-ccceae327426","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.6405437} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1075,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.636051,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f5fd75a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93","object_type":"device","rebac_allow":false,"scope_allow":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":"f5fd75a0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f5fefc40-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9c49e7fe-f546-4456-b9a2-028aed41574b#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9c49e7fe-f546-4456-b9a2-028aed41574b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"d50d46a3-70e0-46c2-bacc-d91d5f10c7be","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.6433043} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"107aa1cd-2130-4b17-bbf9-4f3bf2c3d6bf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.6439023} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1076,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f5fd75a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/94cb550f-665a-4a5e-af78-b80827d77d93/signaling 200 20ms","method":"POST","requestID":"f5fd75a0-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/94cb550f-665a-4a5e-af78-b80827d77d93/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6549164b-f041-4791-8723-ac7e1080778b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d084b29a-234f-48e5-8ffb-1c122c56f73e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.656842} experiment-1 | {"data":{"experiment":"http://localhost/experiments/9c49e7fe-f546-4456-b9a2-028aed41574b","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1076,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":9.166356,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} gateway-1 | {"time_local":"02/Aug/2024:16:26:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1296","request_time":"0.163","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05"} experiment-1 | {"level":"info","message":"POST /experiments? 201 159ms","method":"POST","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05","responseTime":159,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f5fefc40-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b","object_type":"device","rebac_allow":false,"scope_allow":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":"f5fefc40-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f5fefc40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/6549164b-f041-4791-8723-ac7e1080778b/signaling 200 18ms","method":"POST","requestID":"f5fefc40-50eb-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/6549164b-f041-4791-8723-ac7e1080778b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524","level":"info","message":"auth send jwt","requestID":"340077f7d98106e064228b0c3ff25729"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"340077f7d98106e064228b0c3ff25729","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"340077f7d98106e064228b0c3ff25729"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f6020980-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1077,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1077,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.645388,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1078,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"340077f7d98106e064228b0c3ff25729","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615984,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"340077f7d98106e064228b0c3ff25729","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94cb550f-665a-4a5e-af78-b80827d77d93","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"288237f8-254f-49ed-84fa-f35977d67989","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.66923} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1078,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.535948,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6020980-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93","object_type":"device","rebac_allow":false,"scope_allow":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":"f6020980-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6549164b-f041-4791-8723-ac7e1080778b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6549164b-f041-4791-8723-ac7e1080778b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:23.826999550Z"}]},"request_id":"3f0394fa-185d-4a12-b456-5a48b7ba7ffb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.672463} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f6020980-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"340077f7d98106e064228b0c3ff25729","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/94cb550f-665a-4a5e-af78-b80827d77d93/signaling 200 9ms","method":"POST","requestID":"f6020980-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/94cb550f-665a-4a5e-af78-b80827d77d93/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9c49e7fe-f546-4456-b9a2-028aed41574b"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f603b730-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f6040550-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1079,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1079,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.668135,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1080,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"340077f7d98106e064228b0c3ff25729"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f603b730-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615984,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524"} gateway-1 | {"time_local":"02/Aug/2024:16:26:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6549164b-f041-4791-8723-ac7e1080778b? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"340077f7d98106e064228b0c3ff25729"} device-1 | {"level":"info","message":"GET /devices/6549164b-f041-4791-8723-ac7e1080778b? 200 16ms","method":"GET","requestID":"340077f7d98106e064228b0c3ff25729","responseTime":16,"status":200,"url":"/devices/6549164b-f041-4791-8723-ac7e1080778b?"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f603b730-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1080,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.613835,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6040550-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615984,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"f6040550-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6549164b-f041-4791-8723-ac7e1080778b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6549164b-f041-4791-8723-ac7e1080778b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:23.826999550Z"}]},"request_id":"18d7967f-b9ba-45ee-ac7d-33f0e9982e47","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.682597} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524","level":"info","message":"auth send jwt","requestID":"ff3c168c1da4062cb817624c9e761533"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ff3c168c1da4062cb817624c9e761533","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f603b730-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94cb550f-665a-4a5e-af78-b80827d77d93","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94cb550f-665a-4a5e-af78-b80827d77d93","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:23.876222537Z"}]},"request_id":"ac1fb0e3-42e6-4ace-be5e-d50cb940110b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.6834838} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f6040550-50eb-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ff3c168c1da4062cb817624c9e761533"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1081,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1081,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.662098,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f603b730-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ff3c168c1da4062cb817624c9e761533","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615984,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524"} device-1 | {"level":"info","message":"GET /devices/6549164b-f041-4791-8723-ac7e1080778b? 200 13ms","method":"GET","requestID":"f603b730-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/6549164b-f041-4791-8723-ac7e1080778b?"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"ff3c168c1da4062cb817624c9e761533","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f6040550-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/94cb550f-665a-4a5e-af78-b80827d77d93? 200 12ms","method":"GET","requestID":"f6040550-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/94cb550f-665a-4a5e-af78-b80827d77d93?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9c49e7fe-f546-4456-b9a2-028aed41574b"},"level":"info","message":"Building connection plan","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05"} 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":"462bcf50-adc8-4696-af91-bd44ee7e0717"},{"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":"44b3e078-e0e2-4c2e-8730-6b174647eb89"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"96306520-ad8a-4b00-b46e-1a845b3f2ba3"}]},"level":"info","message":"Built pairwise service configurations","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"f6062830-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"f6062830-50eb-11ef-a432-47ab85bb6d58"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94cb550f-665a-4a5e-af78-b80827d77d93","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94cb550f-665a-4a5e-af78-b80827d77d93","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:23.876222537Z"}]},"request_id":"d816416d-03d2-4a18-8375-3422cb31eed2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.691802} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"f6062830-50eb-11ef-a432-47ab85bb6d58","responseTime":1,"status":201,"url":"/rooms"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ff3c168c1da4062cb817624c9e761533","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/64727faa-94b4-4801-adab-6efcc09f1b44?id=b2f8f243-4654-4deb-aa81-fc20f40af45f","ws://localhost/rooms/64727faa-94b4-4801-adab-6efcc09f1b44?id=0b7982a4-94b1-44a9-9e7e-cc462eba4cd4"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f6069d60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ff3c168c1da4062cb817624c9e761533"} gateway-1 | {"time_local":"02/Aug/2024:16:26:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/94cb550f-665a-4a5e-af78-b80827d77d93? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ff3c168c1da4062cb817624c9e761533"} device-1 | {"level":"info","message":"GET /devices/94cb550f-665a-4a5e-af78-b80827d77d93? 200 11ms","method":"GET","requestID":"ff3c168c1da4062cb817624c9e761533","responseTime":11,"status":200,"url":"/devices/94cb550f-665a-4a5e-af78-b80827d77d93?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1082,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1082,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.724727,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6069d60-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615984,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f6069d60-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"24df82e6-a4ed-4018-a126-e6a4b2e5dbfd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.706414} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c0fabfaa-5897-48d2-9720-7e447aa0f21b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.7067153} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f6069d60-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f6069d60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f6069d60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/9ded7f1d-6c76-4928-8a4b-257e655da2b4'","requestID":"f6069d60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/9ded7f1d-6c76-4928-8a4b-257e655da2b4'","requestID":"f6069d60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f6069d60-50eb-11ef-8434-2f6d198c7397"} 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":"f6069d60-50eb-11ef-8434-2f6d198c7397","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":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"f6069d60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/9ded7f1d-6c76-4928-8a4b-257e655da2b4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"9ded7f1d-6c76-4928-8a4b-257e655da2b4","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f60bf490-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f8f243-4654-4deb-aa81-fc20f40af45f\" in room \"http://localhost/rooms/64727faa-94b4-4801-adab-6efcc09f1b44\"","requestID":"f60bf490-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f60bf490-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f60c1ba0-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0b7982a4-94b1-44a9-9e7e-cc462eba4cd4\" in room \"http://localhost/rooms/64727faa-94b4-4801-adab-6efcc09f1b44\"","requestID":"f60c1ba0-50eb-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"63b691e233482d06396b9d029fdde748","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)"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f60c1ba0-50eb-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"63b691e233482d06396b9d029fdde748","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f8f243-4654-4deb-aa81-fc20f40af45f\" in room \"http://localhost/rooms/64727faa-94b4-4801-adab-6efcc09f1b44\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f8f243-4654-4deb-aa81-fc20f40af45f\" in room \"http://localhost/rooms/64727faa-94b4-4801-adab-6efcc09f1b44\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b2f8f243-4654-4deb-aa81-fc20f40af45f\" in room \"http://localhost/rooms/64727faa-94b4-4801-adab-6efcc09f1b44\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b2f8f243-4654-4deb-aa81-fc20f40af45f\" in room \"http://localhost/rooms/64727faa-94b4-4801-adab-6efcc09f1b44\""} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/9ded7f1d-6c76-4928-8a4b-257e655da2b4"}}},"level":"info","message":"received a callback","requestID":"63b691e233482d06396b9d029fdde748"} device-1 | {"data":{"peerconnection":"9ded7f1d-6c76-4928-8a4b-257e655da2b4","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"63b691e233482d06396b9d029fdde748","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:24 +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":"63b691e233482d06396b9d029fdde748"} device-1 | {"data":{"peerconnection":"9ded7f1d-6c76-4928-8a4b-257e655da2b4","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9c49e7fe-f546-4456-b9a2-028aed41574b"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"bef4df7dfe9f04d5c363f0e2cc015d05"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f6106160-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1083,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6549164b-f041-4791-8723-ac7e1080778b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a378f1c1-b781-47ab-a2e5-b4db6add2e78","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.7622368} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1083,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.346419,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6106160-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b","object_type":"device","rebac_allow":false,"scope_allow":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":"f6106160-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/9ded7f1d-6c76-4928-8a4b-257e655da2b4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"9ded7f1d-6c76-4928-8a4b-257e655da2b4","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f6106160-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/6549164b-f041-4791-8723-ac7e1080778b/signaling 200 13ms","method":"POST","requestID":"f6106160-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/6549164b-f041-4791-8723-ac7e1080778b/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d27ef67025f8227b40dc0f896506d4b4","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":"d27ef67025f8227b40dc0f896506d4b4","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f612ab50-50eb-11ef-8434-2f6d198c7397"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/9ded7f1d-6c76-4928-8a4b-257e655da2b4"}}},"level":"info","message":"received a callback","requestID":"d27ef67025f8227b40dc0f896506d4b4"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1084,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94cb550f-665a-4a5e-af78-b80827d77d93","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c86be287-4bc6-4eb2-9973-61ad71d6cc01","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.7789552} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1084,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.483424,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f612ab50-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93","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":"getPeerconnectionsByPeerconnectionId called","requestID":"f613bcc0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f612ab50-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1085,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F9ded7f1d-6c76-4928-8a4b-257e655da2b4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"682824c3-010e-4d11-a0a6-c9327e2d9efa","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.7837396} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1085,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.464848,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/9ded7f1d-6c76-4928-8a4b-257e655da2b4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f613bcc0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/9ded7f1d-6c76-4928-8a4b-257e655da2b4","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":"f613bcc0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f612ab50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/94cb550f-665a-4a5e-af78-b80827d77d93/signaling 200 15ms","method":"POST","requestID":"f612ab50-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/94cb550f-665a-4a5e-af78-b80827d77d93/signaling"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"f613bcc0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/9ded7f1d-6c76-4928-8a4b-257e655da2b4 200 8ms","method":"GET","requestID":"f613bcc0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/peerconnections/9ded7f1d-6c76-4928-8a4b-257e655da2b4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"d27ef67025f8227b40dc0f896506d4b4","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:24 +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":"d27ef67025f8227b40dc0f896506d4b4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f6178d50-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1086,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94cb550f-665a-4a5e-af78-b80827d77d93","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7f828261-9cfc-480f-804a-af3e539d5b12","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.8097138} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1086,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.70905,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6178d50-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93","object_type":"device","rebac_allow":false,"scope_allow":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":"f6178d50-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f6178d50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/94cb550f-665a-4a5e-af78-b80827d77d93/signaling 200 8ms","method":"POST","requestID":"f6178d50-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/94cb550f-665a-4a5e-af78-b80827d77d93/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f61913f0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1087,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6549164b-f041-4791-8723-ac7e1080778b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ba6bbbb4-1997-4929-a24a-cfd65783ab11","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.8194845} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1087,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.21641,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f61913f0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b","object_type":"device","rebac_allow":false,"scope_allow":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":"f61913f0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f61913f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/6549164b-f041-4791-8723-ac7e1080778b/signaling 200 8ms","method":"POST","requestID":"f61913f0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/6549164b-f041-4791-8723-ac7e1080778b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524","level":"info","message":"auth send jwt","requestID":"c6a86b767c044730453e52282a78b47f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c6a86b767c044730453e52282a78b47f","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/9c49e7fe-f546-4456-b9a2-028aed41574b","requestID":"c6a86b767c044730453e52282a78b47f"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1088,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1088,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.687762,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9c49e7fe-f546-4456-b9a2-028aed41574b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c6a86b767c044730453e52282a78b47f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/9c49e7fe-f546-4456-b9a2-028aed41574b","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615984,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c6a86b767c044730453e52282a78b47f","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/9c49e7fe-f546-4456-b9a2-028aed41574b","requestID":"c6a86b767c044730453e52282a78b47f"} gateway-1 | {"time_local":"02/Aug/2024:16:26:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/9c49e7fe-f546-4456-b9a2-028aed41574b HTTP/1.1","status": "200","body_bytes_sent":"1369","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c6a86b767c044730453e52282a78b47f"} experiment-1 | {"level":"info","message":"GET /experiments/9c49e7fe-f546-4456-b9a2-028aed41574b 200 9ms","method":"GET","requestID":"c6a86b767c044730453e52282a78b47f","responseTime":9,"status":200,"url":"/experiments/9c49e7fe-f546-4456-b9a2-028aed41574b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524","level":"info","message":"auth send jwt","requestID":"ea2500bcd9f285d7a410afb8a82c9db0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ea2500bcd9f285d7a410afb8a82c9db0","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/9c49e7fe-f546-4456-b9a2-028aed41574b","requestID":"ea2500bcd9f285d7a410afb8a82c9db0"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1089,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1089,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.668926,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9c49e7fe-f546-4456-b9a2-028aed41574b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ea2500bcd9f285d7a410afb8a82c9db0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/9c49e7fe-f546-4456-b9a2-028aed41574b","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615984,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ea2500bcd9f285d7a410afb8a82c9db0","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9c49e7fe-f546-4456-b9a2-028aed41574b"},"level":"info","message":"Attempting to finish experiment","requestID":"ea2500bcd9f285d7a410afb8a82c9db0"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"f62018d0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1090,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1090,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.650843,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/9ded7f1d-6c76-4928-8a4b-257e655da2b4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f62018d0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/9ded7f1d-6c76-4928-8a4b-257e655da2b4","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615984,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f62018d0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:26:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/64727faa-94b4-4801-adab-6efcc09f1b44?id=b2f8f243-4654-4deb-aa81-fc20f40af45f HTTP/1.1","status": "101","body_bytes_sent":"458","request_time":"0.145","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"da1115bef4fe5ce8237374b61042f20c"} gateway-1 | {"time_local":"02/Aug/2024:16:26:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/64727faa-94b4-4801-adab-6efcc09f1b44?id=0b7982a4-94b1-44a9-9e7e-cc462eba4cd4 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.144","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"bbcd26f505b5b131f4fae623b9101aa1"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"b2f8f243-4654-4deb-aa81-fc20f40af45f\" in room \"http://localhost/rooms/64727faa-94b4-4801-adab-6efcc09f1b44\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"b2f8f243-4654-4deb-aa81-fc20f40af45f\" from room \"http://localhost/rooms/64727faa-94b4-4801-adab-6efcc09f1b44\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/9ded7f1d-6c76-4928-8a4b-257e655da2b4' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/9ded7f1d-6c76-4928-8a4b-257e655da2b4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"9ded7f1d-6c76-4928-8a4b-257e655da2b4","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"0b7982a4-94b1-44a9-9e7e-cc462eba4cd4\" in room \"http://localhost/rooms/64727faa-94b4-4801-adab-6efcc09f1b44\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"0b7982a4-94b1-44a9-9e7e-cc462eba4cd4\" from room \"http://localhost/rooms/64727faa-94b4-4801-adab-6efcc09f1b44\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"461f8c8a2ab93055c67b31f0971597c7","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":"461f8c8a2ab93055c67b31f0971597c7","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F9ded7f1d-6c76-4928-8a4b-257e655da2b4': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F9ded7f1d-6c76-4928-8a4b-257e655da2b4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"df7d61b0-84e7-45f5-b87d-15ff93592452","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.8763978} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f0e9c6a385500f4fb17724cfdf1d73b0","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e34ab1bb-6074-4b9b-9f9e-1dfc2fb92346","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.8767507} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/9ded7f1d-6c76-4928-8a4b-257e655da2b4"}}},"level":"info","message":"received a callback","requestID":"461f8c8a2ab93055c67b31f0971597c7"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"f0e9c6a385500f4fb17724cfdf1d73b0","responseTime":0,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"f62018d0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/relations/update"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/9ded7f1d-6c76-4928-8a4b-257e655da2b4"}}},"level":"info","message":"received a callback","requestID":"f0e9c6a385500f4fb17724cfdf1d73b0"} device-1 | {"data":{"peerconnection":"9ded7f1d-6c76-4928-8a4b-257e655da2b4","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"f62018d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/9ded7f1d-6c76-4928-8a4b-257e655da2b4 204 34ms","method":"DELETE","requestID":"f62018d0-50eb-11ef-8434-2f6d198c7397","responseTime":34,"status":204,"url":"/peerconnections/9ded7f1d-6c76-4928-8a4b-257e655da2b4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9c49e7fe-f546-4456-b9a2-028aed41574b"},"level":"info","message":"Successfully finished experiment","requestID":"ea2500bcd9f285d7a410afb8a82c9db0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f627e100-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1091,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F94cb550f-665a-4a5e-af78-b80827d77d93","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"130dea94-8395-4b8d-8740-fce238f85a1e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.918388} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1091,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.347501,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f627e100-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/94cb550f-665a-4a5e-af78-b80827d77d93","object_type":"device","rebac_allow":false,"scope_allow":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":"f627e100-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f627e100-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/94cb550f-665a-4a5e-af78-b80827d77d93/signaling 200 12ms","method":"POST","requestID":"f627e100-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/94cb550f-665a-4a5e-af78-b80827d77d93/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9c49e7fe-f546-4456-b9a2-028aed41574b': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9c49e7fe-f546-4456-b9a2-028aed41574b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"d8f12da5-c0e3-401a-93f0-fc03604d4b5e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.924849} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"23054efc-398c-4308-92ae-e8221a84d50d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.925133} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f62a03e0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"ea2500bcd9f285d7a410afb8a82c9db0","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1092,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6549164b-f041-4791-8723-ac7e1080778b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"384cef65-7d61-4648-bfc6-8db7e9384ed3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615984.9327383} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1092,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.879498,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f62a03e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b","object_type":"device","rebac_allow":false,"scope_allow":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":"f62a03e0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f62a03e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/6549164b-f041-4791-8723-ac7e1080778b/signaling 200 12ms","method":"POST","requestID":"f62a03e0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/6549164b-f041-4791-8723-ac7e1080778b/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/9c49e7fe-f546-4456-b9a2-028aed41574b","requestID":"ea2500bcd9f285d7a410afb8a82c9db0"} gateway-1 | {"time_local":"02/Aug/2024:16:26:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/9c49e7fe-f546-4456-b9a2-028aed41574b HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.142","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ea2500bcd9f285d7a410afb8a82c9db0"} gateway-1 | {"time_local":"02/Aug/2024:16:26:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2106","request_time":"0.563","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"4ea79928308b49dccef9915c699acebf"} gateway-1 | {"time_local":"02/Aug/2024:16:26:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2107","request_time":"0.555","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"8d69284812882e0ebee07a06ec097518"} experiment-1 | {"level":"info","message":"DELETE /experiments/9c49e7fe-f546-4456-b9a2-028aed41574b 204 140ms","method":"DELETE","requestID":"ea2500bcd9f285d7a410afb8a82c9db0","responseTime":140,"status":204,"url":"/experiments/9c49e7fe-f546-4456-b9a2-028aed41574b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 118ms","method":"POST","requestID":"461f8c8a2ab93055c67b31f0971597c7","responseTime":118,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:24 +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":"461f8c8a2ab93055c67b31f0971597c7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524","level":"info","message":"auth send jwt","requestID":"6a012cd440ab739710cf8862180c0da8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 118ms","method":"POST","requestID":"f0e9c6a385500f4fb17724cfdf1d73b0","responseTime":118,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6a012cd440ab739710cf8862180c0da8","responseTime":3,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:24 +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":"f0e9c6a385500f4fb17724cfdf1d73b0"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/6549164b-f041-4791-8723-ac7e1080778b' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"6a012cd440ab739710cf8862180c0da8"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1093,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1093,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.061249,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"6a012cd440ab739710cf8862180c0da8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615984,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NH0.aTms48Rhh4_wHUrvU1NZAyGPcs34rznMUqcdPca6524"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6a012cd440ab739710cf8862180c0da8","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/94cb550f-665a-4a5e-af78-b80827d77d93' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cc47430-f32d-4b1c-b997-1f17faab6f9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ba1d6fa0-d394-4112-a5e2-db008f446031","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.021656} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6a012cd440ab739710cf8862180c0da8","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"60836392-5dc8-4ada-81b8-cbfa8b88187b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.0270743} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"6a012cd440ab739710cf8862180c0da8","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cc47430-f32d-4b1c-b997-1f17faab6f9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"7fa5937f-1cfc-4ebf-a34d-90d5c27ec668","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.0382318} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"64c811c5-c414-4d72-b116-f9da4fb73910","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.0385342} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"6a012cd440ab739710cf8862180c0da8","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cc47430-f32d-4b1c-b997-1f17faab6f9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cc47430-f32d-4b1c-b997-1f17faab6f9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:25.038202393Z"}]},"request_id":"25316098-03e8-462b-b7c2-d5aa21284758","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.0431116} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6a012cd440ab739710cf8862180c0da8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6a012cd440ab739710cf8862180c0da8"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"6a012cd440ab739710cf8862180c0da8","responseTime":46,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6a012cd440ab739710cf8862180c0da8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8","level":"info","message":"auth send jwt","requestID":"0174149f3b8acc322b36710d612adfbd"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0174149f3b8acc322b36710d612adfbd","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0174149f3b8acc322b36710d612adfbd"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1094,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1094,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.760688,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0174149f3b8acc322b36710d612adfbd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615985,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0174149f3b8acc322b36710d612adfbd","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93b3bf96-e1bb-47fe-b84c-5b777845dc70","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2fa6e789-5a9b-44fa-bb71-96aae96bf0c0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.0660982} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0174149f3b8acc322b36710d612adfbd","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eabb8e74-b05b-488f-96fd-569567c0c1e0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.0707083} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"0174149f3b8acc322b36710d612adfbd","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93b3bf96-e1bb-47fe-b84c-5b777845dc70","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"4a19f657-0d86-4a19-82ea-4ed9a07c9d34","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.0856721} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1c64ab68-b27d-4475-911f-32e88665e427","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.0858102} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"0174149f3b8acc322b36710d612adfbd","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93b3bf96-e1bb-47fe-b84c-5b777845dc70","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93b3bf96-e1bb-47fe-b84c-5b777845dc70","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:25.085636934Z"}]},"request_id":"21921422-f026-46af-a512-ed5e299be4de","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.0899773} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0174149f3b8acc322b36710d612adfbd","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0174149f3b8acc322b36710d612adfbd"} gateway-1 | {"time_local":"02/Aug/2024:16:26:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0174149f3b8acc322b36710d612adfbd"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"0174149f3b8acc322b36710d612adfbd","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8","level":"info","message":"auth send jwt","requestID":"fe2fa589df8d57555bd70885f39f8b53"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fe2fa589df8d57555bd70885f39f8b53","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8","level":"info","message":"auth send jwt","requestID":"d849eb52e9cbc0d49920dde32cd29c74"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d849eb52e9cbc0d49920dde32cd29c74","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"fe2fa589df8d57555bd70885f39f8b53"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d849eb52e9cbc0d49920dde32cd29c74"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1095,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1095,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.750702,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fe2fa589df8d57555bd70885f39f8b53","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615985,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fe2fa589df8d57555bd70885f39f8b53","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1096,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1096,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.852476,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d849eb52e9cbc0d49920dde32cd29c74","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615985,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d849eb52e9cbc0d49920dde32cd29c74","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93b3bf96-e1bb-47fe-b84c-5b777845dc70","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93b3bf96-e1bb-47fe-b84c-5b777845dc70","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:25.085636934Z"}]},"request_id":"0f2b2000-5473-4de2-b8ac-55b04d91b3b7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.599711} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fe2fa589df8d57555bd70885f39f8b53","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cc47430-f32d-4b1c-b997-1f17faab6f9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cc47430-f32d-4b1c-b997-1f17faab6f9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:25.038202393Z"}]},"request_id":"7395685f-2104-4ed2-bd91-0b7c4417526e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.6005778} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d849eb52e9cbc0d49920dde32cd29c74","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"39137f38-5de5-4c40-9314-3091f0d697b5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.604772} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"fe2fa589df8d57555bd70885f39f8b53","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b5c6bc67-bc64-4fd2-914f-3323ded5a840","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.6057475} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"d849eb52e9cbc0d49920dde32cd29c74","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cc47430-f32d-4b1c-b997-1f17faab6f9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cc47430-f32d-4b1c-b997-1f17faab6f9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:25.038202393Z"}]},"request_id":"72f8205f-df2d-4c97-a7b5-98c7c8575c30","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.6089559} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d849eb52e9cbc0d49920dde32cd29c74","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d849eb52e9cbc0d49920dde32cd29c74"} gateway-1 | {"time_local":"02/Aug/2024:16:26:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"d849eb52e9cbc0d49920dde32cd29c74"} device-1 | {"level":"info","message":"PATCH /devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a 200 19ms","method":"PATCH","requestID":"d849eb52e9cbc0d49920dde32cd29c74","responseTime":19,"status":200,"url":"/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8","level":"info","message":"auth send jwt","requestID":"f93e97511988f1fb2878cfb165f51777"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f93e97511988f1fb2878cfb165f51777","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f93e97511988f1fb2878cfb165f51777"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1097,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1097,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.268908,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f93e97511988f1fb2878cfb165f51777","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615985,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f93e97511988f1fb2878cfb165f51777","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93b3bf96-e1bb-47fe-b84c-5b777845dc70","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93b3bf96-e1bb-47fe-b84c-5b777845dc70","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:25.085636934Z"}]},"request_id":"9be7f132-9978-4364-a31b-20891cc98392","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.6201768} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fe2fa589df8d57555bd70885f39f8b53","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"fe2fa589df8d57555bd70885f39f8b53"} gateway-1 | {"time_local":"02/Aug/2024:16:26:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.038","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"fe2fa589df8d57555bd70885f39f8b53"} device-1 | {"level":"info","message":"PATCH /devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70 200 32ms","method":"PATCH","requestID":"fe2fa589df8d57555bd70885f39f8b53","responseTime":32,"status":200,"url":"/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8","level":"info","message":"auth send jwt","requestID":"48d22ef973fb4a8cbb890ee4da763417"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"48d22ef973fb4a8cbb890ee4da763417","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"48d22ef973fb4a8cbb890ee4da763417"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1098,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1098,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.743652,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"48d22ef973fb4a8cbb890ee4da763417","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615985,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"48d22ef973fb4a8cbb890ee4da763417","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f93e97511988f1fb2878cfb165f51777"} device-1 | {"level":"info","message":"POST /devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a/websocket 200 19ms","method":"POST","requestID":"f93e97511988f1fb2878cfb165f51777","responseTime":19,"status":200,"url":"/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:26:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"f93e97511988f1fb2878cfb165f51777"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"48d22ef973fb4a8cbb890ee4da763417"} gateway-1 | {"time_local":"02/Aug/2024:16:26:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.019","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"48d22ef973fb4a8cbb890ee4da763417"} device-1 | {"level":"info","message":"POST /devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70/websocket 200 15ms","method":"POST","requestID":"48d22ef973fb4a8cbb890ee4da763417","responseTime":15,"status":200,"url":"/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8","level":"info","message":"auth send jwt","requestID":"6c89b3476eea2b4b905d3081cebaec45"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6c89b3476eea2b4b905d3081cebaec45","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6c89b3476eea2b4b905d3081cebaec45"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1099,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1099,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.849043,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"6c89b3476eea2b4b905d3081cebaec45","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615985,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6c89b3476eea2b4b905d3081cebaec45","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cc47430-f32d-4b1c-b997-1f17faab6f9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cc47430-f32d-4b1c-b997-1f17faab6f9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:25.038202393Z"}]},"request_id":"4b65e6ec-6aa6-47b2-b054-e9e9a428c895","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.6799908} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6c89b3476eea2b4b905d3081cebaec45","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6c89b3476eea2b4b905d3081cebaec45"} gateway-1 | {"time_local":"02/Aug/2024:16:26:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6c89b3476eea2b4b905d3081cebaec45"} device-1 | {"level":"info","message":"GET /devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a? 200 12ms","method":"GET","requestID":"6c89b3476eea2b4b905d3081cebaec45","responseTime":12,"status":200,"url":"/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8","level":"info","message":"auth send jwt","requestID":"62b094503cc63427033080e67b7f4875"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"62b094503cc63427033080e67b7f4875","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"62b094503cc63427033080e67b7f4875"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1100,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1100,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.906855,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"62b094503cc63427033080e67b7f4875","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615985,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"62b094503cc63427033080e67b7f4875","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93b3bf96-e1bb-47fe-b84c-5b777845dc70","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93b3bf96-e1bb-47fe-b84c-5b777845dc70","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:25.085636934Z"}]},"request_id":"2ac1677e-7407-4f0b-a6ad-2843c8095830","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.6979911} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"62b094503cc63427033080e67b7f4875","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"62b094503cc63427033080e67b7f4875"} gateway-1 | {"time_local":"02/Aug/2024:16:26:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"62b094503cc63427033080e67b7f4875"} device-1 | {"level":"info","message":"GET /devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70? 200 15ms","method":"GET","requestID":"62b094503cc63427033080e67b7f4875","responseTime":15,"status":200,"url":"/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8","level":"info","message":"auth send jwt","requestID":"68a490192b9d22f8f189350d0843bbaa"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"68a490192b9d22f8f189350d0843bbaa","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"68a490192b9d22f8f189350d0843bbaa"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1101,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1101,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.861568,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"68a490192b9d22f8f189350d0843bbaa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615985,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"68a490192b9d22f8f189350d0843bbaa","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad"},"level":"info","message":"Attempting to run experiment","requestID":"68a490192b9d22f8f189350d0843bbaa"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad"},"level":"info","message":"Attempting to book experiment","requestID":"68a490192b9d22f8f189350d0843bbaa"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad"},"level":"info","message":"Successfully booked experiment","requestID":"68a490192b9d22f8f189350d0843bbaa"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f6a72320-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f6a77140-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1102,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1102,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.591817,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1103,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6a72320-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615985,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f6a72320-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1103,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.55208,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6a77140-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615985,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f6a77140-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cc47430-f32d-4b1c-b997-1f17faab6f9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cc47430-f32d-4b1c-b997-1f17faab6f9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:25.038202393Z"}]},"request_id":"bfc56ed4-5767-4826-91d0-c89a4db8dd09","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.7563307} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93b3bf96-e1bb-47fe-b84c-5b777845dc70","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93b3bf96-e1bb-47fe-b84c-5b777845dc70","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:25.085636934Z"}]},"request_id":"8f404a10-d0a9-47de-8222-2f5a84ec17ba","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.7573416} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"f6a72320-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"f6a77140-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f6a72320-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a? 200 22ms","method":"GET","requestID":"f6a72320-50eb-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f6a77140-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70? 200 21ms","method":"GET","requestID":"f6a77140-50eb-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad"},"level":"info","message":"Setting up experiment","requestID":"68a490192b9d22f8f189350d0843bbaa"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"68a490192b9d22f8f189350d0843bbaa"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad"},"level":"info","message":"Successfully locked booking for experiment","requestID":"68a490192b9d22f8f189350d0843bbaa"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"68a490192b9d22f8f189350d0843bbaa"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"68a490192b9d22f8f189350d0843bbaa"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad"},"level":"info","message":"Attempting to update booking for experiment","requestID":"68a490192b9d22f8f189350d0843bbaa"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad"},"level":"info","message":"Successfully updated booking for experiment","requestID":"68a490192b9d22f8f189350d0843bbaa"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad"},"level":"info","message":"Successfully set up experiment","requestID":"68a490192b9d22f8f189350d0843bbaa"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f6b2e2f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f6b33110-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1104,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f6b3a640-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1104,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.324789,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1105,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad"},"level":"info","message":"Successfully running experiment","requestID":"68a490192b9d22f8f189350d0843bbaa"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6b2e2f0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615985,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f6b2e2f0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1105,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.57895,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6b33110-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615985,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f6b33110-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1106,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1106,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.291928,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cc47430-f32d-4b1c-b997-1f17faab6f9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c28a80df-bd36-47c0-8284-c47beffeee62","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.8361194} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cc47430-f32d-4b1c-b997-1f17faab6f9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cc47430-f32d-4b1c-b997-1f17faab6f9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:25.038202393Z"}]},"request_id":"b616682f-39c0-411d-a25d-81cc35ec54e5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.8384845} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6b3a640-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a","object_type":"device","rebac_allow":false,"scope_allow":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":"f6b3a640-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93b3bf96-e1bb-47fe-b84c-5b777845dc70","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93b3bf96-e1bb-47fe-b84c-5b777845dc70","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:25.085636934Z"}]},"request_id":"1846287b-aa3b-411d-ac23-ccac4cf7ce7f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.8401523} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"f6b2e2f0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f6b33110-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f6b3a640-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a/signaling 200 22ms","method":"POST","requestID":"f6b3a640-50eb-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f6b2e2f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a? 200 28ms","method":"GET","requestID":"f6b2e2f0-50eb-11ef-8434-2f6d198c7397","responseTime":28,"status":200,"url":"/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f6b33110-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70? 200 28ms","method":"GET","requestID":"f6b33110-50eb-11ef-8434-2f6d198c7397","responseTime":28,"status":200,"url":"/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f6b776d0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3490d1e2-999f-4556-a60f-5d2478cf3aad#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3490d1e2-999f-4556-a60f-5d2478cf3aad","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"acb82d7d-e437-47c2-85a2-b76fed8ca04a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.8565125} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9c713530-80f2-4115-b382-c2336328edb2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.856982} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f6b81310-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"68a490192b9d22f8f189350d0843bbaa","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93b3bf96-e1bb-47fe-b84c-5b777845dc70","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1d884dbe-6a91-4877-aa18-9d447cb76834","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.859406} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1107,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1107,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.78398,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1108,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6b776d0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70","object_type":"device","rebac_allow":false,"scope_allow":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":"f6b776d0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cc47430-f32d-4b1c-b997-1f17faab6f9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"94770904-1afe-4363-90db-e50928a0c3a7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.8635802} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1108,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.229972,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6b81310-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a","object_type":"device","rebac_allow":false,"scope_allow":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":"f6b81310-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f6b776d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70/signaling 200 12ms","method":"POST","requestID":"f6b776d0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"68a490192b9d22f8f189350d0843bbaa"} experiment-1 | {"level":"info","message":"POST /experiments? 201 159ms","method":"POST","requestID":"68a490192b9d22f8f189350d0843bbaa","responseTime":159,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1296","request_time":"0.164","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"68a490192b9d22f8f189350d0843bbaa"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f6b81310-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a/signaling 200 12ms","method":"POST","requestID":"f6b81310-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f6ba5d00-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8","level":"info","message":"auth send jwt","requestID":"853bf1921d89b4d0d3e883cd18ac82c2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"853bf1921d89b4d0d3e883cd18ac82c2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"853bf1921d89b4d0d3e883cd18ac82c2"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1109,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1110,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1110,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.495874,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"853bf1921d89b4d0d3e883cd18ac82c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615985,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"853bf1921d89b4d0d3e883cd18ac82c2","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93b3bf96-e1bb-47fe-b84c-5b777845dc70","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8a9e5bbe-4fb1-4ab6-b631-d81b1751bf62","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.879304} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1109,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.082601,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6ba5d00-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70","object_type":"device","rebac_allow":false,"scope_allow":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":"f6ba5d00-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cc47430-f32d-4b1c-b997-1f17faab6f9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cc47430-f32d-4b1c-b997-1f17faab6f9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:25.038202393Z"}]},"request_id":"9a86eb96-b631-4d81-b052-48b67730e99e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.8838944} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f6ba5d00-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"853bf1921d89b4d0d3e883cd18ac82c2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70/signaling 200 13ms","method":"POST","requestID":"f6ba5d00-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"68a490192b9d22f8f189350d0843bbaa"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f6bca6f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f6bcce00-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"853bf1921d89b4d0d3e883cd18ac82c2"} gateway-1 | {"time_local":"02/Aug/2024:16:26:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"853bf1921d89b4d0d3e883cd18ac82c2"} device-1 | {"level":"info","message":"GET /devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a? 200 16ms","method":"GET","requestID":"853bf1921d89b4d0d3e883cd18ac82c2","responseTime":16,"status":200,"url":"/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1111,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1111,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.016678,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1112,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6bca6f0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615985,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f6bca6f0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1112,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.068361,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6bcce00-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615985,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f6bcce00-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8","level":"info","message":"auth send jwt","requestID":"84c4c540e6580286328a2282e4c512db"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"84c4c540e6580286328a2282e4c512db","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"84c4c540e6580286328a2282e4c512db"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cc47430-f32d-4b1c-b997-1f17faab6f9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cc47430-f32d-4b1c-b997-1f17faab6f9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:25.038202393Z"}]},"request_id":"c1855663-dc43-4c00-a41b-9b11c30755d3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.8959208} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f6bca6f0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93b3bf96-e1bb-47fe-b84c-5b777845dc70","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93b3bf96-e1bb-47fe-b84c-5b777845dc70","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:25.085636934Z"}]},"request_id":"08c43220-afc0-4823-aeb6-0166b135ab5c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.897083} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f6bcce00-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1113,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1113,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.085436,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"84c4c540e6580286328a2282e4c512db","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615985,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f6bca6f0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"84c4c540e6580286328a2282e4c512db","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a? 200 14ms","method":"GET","requestID":"f6bca6f0-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f6bcce00-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70? 200 15ms","method":"GET","requestID":"f6bcce00-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93b3bf96-e1bb-47fe-b84c-5b777845dc70","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93b3bf96-e1bb-47fe-b84c-5b777845dc70","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:25.085636934Z"}]},"request_id":"2194b75f-b8fa-4034-881e-210897a3dfbf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.9037306} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"84c4c540e6580286328a2282e4c512db","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad"},"level":"info","message":"Building connection plan","requestID":"68a490192b9d22f8f189350d0843bbaa"} 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":"be7d507d-23bf-48f9-8a80-6f640e057459"},{"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":"49673431-33e5-4dc5-9cdd-8b2ce69c16c0"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"a2ec427f-1c71-4f9e-a699-ec503e39b26c"}]},"level":"info","message":"Built pairwise service configurations","requestID":"68a490192b9d22f8f189350d0843bbaa"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"84c4c540e6580286328a2282e4c512db"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"f6bf8d20-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"f6bf8d20-50eb-11ef-a432-47ab85bb6d58"} gateway-1 | {"time_local":"02/Aug/2024:16:26:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"84c4c540e6580286328a2282e4c512db"} device-1 | {"level":"info","message":"GET /devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70? 200 11ms","method":"GET","requestID":"84c4c540e6580286328a2282e4c512db","responseTime":11,"status":200,"url":"/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70?"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"f6bf8d20-50eb-11ef-a432-47ab85bb6d58","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/9f4d3018-4a3f-4bf8-82c1-addbd262da39?id=078a790e-473b-43d4-9970-8b35fb273fcb","ws://localhost/rooms/9f4d3018-4a3f-4bf8-82c1-addbd262da39?id=a4342f0f-b352-4ab8-9db1-bbabb817424f"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"68a490192b9d22f8f189350d0843bbaa"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f6c00250-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1114,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1114,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.919252,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6c00250-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615985,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4NX0.kaGr_I1p-p2qOlZoX6mrTPYnFZwDK-DBpiJjGOFW2F8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f6c00250-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"7d2025a3-14d7-4a1a-a865-a25ab426dc7f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.9202287} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0e895f79-daba-46e1-a032-254796618b87","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.920466} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f6c00250-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f6c00250-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f6c00250-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2517c7ad-1553-4627-abb2-7ee69a1d18bf'","requestID":"f6c00250-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2517c7ad-1553-4627-abb2-7ee69a1d18bf'","requestID":"f6c00250-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f6c00250-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 22ms","method":"POST","requestID":"f6c00250-50eb-11ef-8434-2f6d198c7397","responseTime":22,"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":"f6c00250-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2517c7ad-1553-4627-abb2-7ee69a1d18bf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2517c7ad-1553-4627-abb2-7ee69a1d18bf","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f6c50b60-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4342f0f-b352-4ab8-9db1-bbabb817424f\" in room \"http://localhost/rooms/9f4d3018-4a3f-4bf8-82c1-addbd262da39\"","requestID":"f6c50b60-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f6c50b60-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"f6c53270-50eb-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"078a790e-473b-43d4-9970-8b35fb273fcb\" in room \"http://localhost/rooms/9f4d3018-4a3f-4bf8-82c1-addbd262da39\"","requestID":"f6c53270-50eb-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9123f659e7b49e94ddbeecb41b2980da","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)"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"f6c53270-50eb-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9123f659e7b49e94ddbeecb41b2980da","responseTime":2,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4342f0f-b352-4ab8-9db1-bbabb817424f\" in room \"http://localhost/rooms/9f4d3018-4a3f-4bf8-82c1-addbd262da39\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4342f0f-b352-4ab8-9db1-bbabb817424f\" in room \"http://localhost/rooms/9f4d3018-4a3f-4bf8-82c1-addbd262da39\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4342f0f-b352-4ab8-9db1-bbabb817424f\" in room \"http://localhost/rooms/9f4d3018-4a3f-4bf8-82c1-addbd262da39\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4342f0f-b352-4ab8-9db1-bbabb817424f\" in room \"http://localhost/rooms/9f4d3018-4a3f-4bf8-82c1-addbd262da39\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4342f0f-b352-4ab8-9db1-bbabb817424f\" in room \"http://localhost/rooms/9f4d3018-4a3f-4bf8-82c1-addbd262da39\""} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/2517c7ad-1553-4627-abb2-7ee69a1d18bf"}}},"level":"info","message":"received a callback","requestID":"9123f659e7b49e94ddbeecb41b2980da"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4342f0f-b352-4ab8-9db1-bbabb817424f\" in room \"http://localhost/rooms/9f4d3018-4a3f-4bf8-82c1-addbd262da39\""} device-1 | {"data":{"peerconnection":"2517c7ad-1553-4627-abb2-7ee69a1d18bf","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"9123f659e7b49e94ddbeecb41b2980da","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26: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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"9123f659e7b49e94ddbeecb41b2980da"} device-1 | {"data":{"peerconnection":"2517c7ad-1553-4627-abb2-7ee69a1d18bf","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"68a490192b9d22f8f189350d0843bbaa"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f6c99f40-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1115,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cc47430-f32d-4b1c-b997-1f17faab6f9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"76ec2af8-af44-49bb-a9b7-66d538db9556","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.9773977} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1115,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.794221,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6c99f40-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a","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":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2517c7ad-1553-4627-abb2-7ee69a1d18bf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2517c7ad-1553-4627-abb2-7ee69a1d18bf","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f6c99f40-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ad5290c538c458fb511633f3bbf57f2d","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":"ad5290c538c458fb511633f3bbf57f2d","responseTime":0,"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/2517c7ad-1553-4627-abb2-7ee69a1d18bf"}}},"level":"info","message":"received a callback","requestID":"ad5290c538c458fb511633f3bbf57f2d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f6c99f40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a/signaling 200 11ms","method":"POST","requestID":"f6c99f40-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f6cbc220-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1116,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"f6cc3750-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93b3bf96-e1bb-47fe-b84c-5b777845dc70","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b6e8be6c-3f29-4df9-a374-077cc130df4f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.9903018} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1116,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.407082,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1117,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6cbc220-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70","object_type":"device","rebac_allow":false,"scope_allow":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":"f6cbc220-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2517c7ad-1553-4627-abb2-7ee69a1d18bf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"027d55ba-f22c-4b6b-acf1-42518e4b16e1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615985.9937406} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1117,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.761797,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2517c7ad-1553-4627-abb2-7ee69a1d18bf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6cc3750-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2517c7ad-1553-4627-abb2-7ee69a1d18bf","object_type":"peerconnection","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":"f6cbc220-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70/signaling 200 9ms","method":"POST","requestID":"f6cbc220-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f6cc3750-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"f6cc3750-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/2517c7ad-1553-4627-abb2-7ee69a1d18bf 200 8ms","method":"GET","requestID":"f6cc3750-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/peerconnections/2517c7ad-1553-4627-abb2-7ee69a1d18bf"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 28ms","method":"POST","requestID":"ad5290c538c458fb511633f3bbf57f2d","responseTime":28,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26: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.031","http_referrer":"","http_user_agent":"node-fetch","requestID":"ad5290c538c458fb511633f3bbf57f2d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f6cf92b0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1118,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:26Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cc47430-f32d-4b1c-b997-1f17faab6f9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9441cb97-836c-4119-a5da-e8080a58f69b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615986.0158916} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1118,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.463314,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6cf92b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a","object_type":"device","rebac_allow":false,"scope_allow":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":"f6cf92b0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f6cf92b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a/signaling 200 8ms","method":"POST","requestID":"f6cf92b0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f6d11950-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1119,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:26Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93b3bf96-e1bb-47fe-b84c-5b777845dc70","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"954027e8-e773-4d78-9a70-751a54dfcb6f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615986.026284} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1119,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.332087,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6d11950-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70","object_type":"device","rebac_allow":false,"scope_allow":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":"f6d11950-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f6d11950-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70/signaling 200 9ms","method":"POST","requestID":"f6d11950-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4Nn0.7U5uQMtWGw4kam6bD4mGsKnS6XmaVYsUgh11Vsmlq3Y","level":"info","message":"auth send jwt","requestID":"8dfac65a0010a229eac7fe030716c5ad"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8dfac65a0010a229eac7fe030716c5ad","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad","requestID":"8dfac65a0010a229eac7fe030716c5ad"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1120,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1120,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.017267,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"8dfac65a0010a229eac7fe030716c5ad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615986,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4Nn0.7U5uQMtWGw4kam6bD4mGsKnS6XmaVYsUgh11Vsmlq3Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8dfac65a0010a229eac7fe030716c5ad","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad","requestID":"8dfac65a0010a229eac7fe030716c5ad"} experiment-1 | {"level":"info","message":"GET /experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad 200 12ms","method":"GET","requestID":"8dfac65a0010a229eac7fe030716c5ad","responseTime":12,"status":200,"url":"/experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad"} gateway-1 | {"time_local":"02/Aug/2024:16:26:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad HTTP/1.1","status": "200","body_bytes_sent":"1369","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8dfac65a0010a229eac7fe030716c5ad"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4Nn0.7U5uQMtWGw4kam6bD4mGsKnS6XmaVYsUgh11Vsmlq3Y","level":"info","message":"auth send jwt","requestID":"a90a6008eaa901e4f4a50994d4a1d39e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a90a6008eaa901e4f4a50994d4a1d39e","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad","requestID":"a90a6008eaa901e4f4a50994d4a1d39e"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1121,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1121,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.850988,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:26Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a90a6008eaa901e4f4a50994d4a1d39e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615986,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4Nn0.7U5uQMtWGw4kam6bD4mGsKnS6XmaVYsUgh11Vsmlq3Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a90a6008eaa901e4f4a50994d4a1d39e","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad"},"level":"info","message":"Attempting to finish experiment","requestID":"a90a6008eaa901e4f4a50994d4a1d39e"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"f6da4110-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1122,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1122,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.899699,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:26Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2517c7ad-1553-4627-abb2-7ee69a1d18bf","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6da4110-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/2517c7ad-1553-4627-abb2-7ee69a1d18bf","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615986,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4Nn0.7U5uQMtWGw4kam6bD4mGsKnS6XmaVYsUgh11Vsmlq3Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f6da4110-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:26:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/9f4d3018-4a3f-4bf8-82c1-addbd262da39?id=078a790e-473b-43d4-9970-8b35fb273fcb HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.151","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"a80265cc4642eced81fecebd890d1a31"} gateway-1 | {"time_local":"02/Aug/2024:16:26:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/9f4d3018-4a3f-4bf8-82c1-addbd262da39?id=a4342f0f-b352-4ab8-9db1-bbabb817424f HTTP/1.1","status": "101","body_bytes_sent":"916","request_time":"0.151","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"bfb8df6aca26dd2581387012f2c871e0"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"078a790e-473b-43d4-9970-8b35fb273fcb\" in room \"http://localhost/rooms/9f4d3018-4a3f-4bf8-82c1-addbd262da39\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"078a790e-473b-43d4-9970-8b35fb273fcb\" from room \"http://localhost/rooms/9f4d3018-4a3f-4bf8-82c1-addbd262da39\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"a4342f0f-b352-4ab8-9db1-bbabb817424f\" in room \"http://localhost/rooms/9f4d3018-4a3f-4bf8-82c1-addbd262da39\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"a4342f0f-b352-4ab8-9db1-bbabb817424f\" from room \"http://localhost/rooms/9f4d3018-4a3f-4bf8-82c1-addbd262da39\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2517c7ad-1553-4627-abb2-7ee69a1d18bf' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2517c7ad-1553-4627-abb2-7ee69a1d18bf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2517c7ad-1553-4627-abb2-7ee69a1d18bf","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2517c7ad-1553-4627-abb2-7ee69a1d18bf': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2517c7ad-1553-4627-abb2-7ee69a1d18bf","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"2db763fd-ff3b-47b3-999f-ea9bd2c0a160","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615986.0963924} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"159b654bf389cdadf7467253c6c8fbf3","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9407aee3-e923-4689-b3a4-4fd64e5f196b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615986.0966482} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"159b654bf389cdadf7467253c6c8fbf3","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1c5fb88028db027c6ea34864b644ed5c","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":"1c5fb88028db027c6ea34864b644ed5c","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/2517c7ad-1553-4627-abb2-7ee69a1d18bf"}}},"level":"info","message":"received a callback","requestID":"159b654bf389cdadf7467253c6c8fbf3"} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"f6da4110-50eb-11ef-8434-2f6d198c7397","responseTime":6,"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/2517c7ad-1553-4627-abb2-7ee69a1d18bf"}}},"level":"info","message":"received a callback","requestID":"1c5fb88028db027c6ea34864b644ed5c"} device-1 | {"data":{"peerconnection":"2517c7ad-1553-4627-abb2-7ee69a1d18bf","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"f6da4110-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/2517c7ad-1553-4627-abb2-7ee69a1d18bf 204 33ms","method":"DELETE","requestID":"f6da4110-50eb-11ef-8434-2f6d198c7397","responseTime":33,"status":204,"url":"/peerconnections/2517c7ad-1553-4627-abb2-7ee69a1d18bf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad"},"level":"info","message":"Successfully finished experiment","requestID":"a90a6008eaa901e4f4a50994d4a1d39e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f6e1bb20-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1123,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:26Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8cc47430-f32d-4b1c-b997-1f17faab6f9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3bc703c3-bd88-4acb-8675-e6189e8ab12d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615986.1346817} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1123,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.413011,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6e1bb20-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a","object_type":"device","rebac_allow":false,"scope_allow":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":"f6e1bb20-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f6e1bb20-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a/signaling 200 8ms","method":"POST","requestID":"f6e1bb20-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/8cc47430-f32d-4b1c-b997-1f17faab6f9a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f6e368d0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3490d1e2-999f-4556-a60f-5d2478cf3aad': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3490d1e2-999f-4556-a60f-5d2478cf3aad","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"04b80312-570d-4580-ba39-d37a14ab9564","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615986.141882} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9fffd3b7-6784-4b88-bc96-c472c9a17e62","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615986.142095} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"a90a6008eaa901e4f4a50994d4a1d39e","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1124,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:26Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F93b3bf96-e1bb-47fe-b84c-5b777845dc70","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c87d9a87-f697-45c1-9c46-fdadd8ce7f5d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615986.1466684} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1124,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.843101,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f6e368d0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70","object_type":"device","rebac_allow":false,"scope_allow":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":"f6e368d0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f6e368d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70/signaling 200 9ms","method":"POST","requestID":"f6e368d0-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad","requestID":"a90a6008eaa901e4f4a50994d4a1d39e"} gateway-1 | {"time_local":"02/Aug/2024:16:26:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.135","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a90a6008eaa901e4f4a50994d4a1d39e"} experiment-1 | {"level":"info","message":"DELETE /experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad 204 131ms","method":"DELETE","requestID":"a90a6008eaa901e4f4a50994d4a1d39e","responseTime":131,"status":204,"url":"/experiments/3490d1e2-999f-4556-a60f-5d2478cf3aad"} gateway-1 | {"time_local":"02/Aug/2024:16:26:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2105","request_time":"0.556","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"a9117070181e88712dc51d1d7d574816"} gateway-1 | {"time_local":"02/Aug/2024:16:26:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2108","request_time":"0.566","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"83b4dd67d3b4507f82368792e78549fe"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 105ms","method":"POST","requestID":"159b654bf389cdadf7467253c6c8fbf3","responseTime":105,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26: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.109","http_referrer":"","http_user_agent":"node-fetch","requestID":"159b654bf389cdadf7467253c6c8fbf3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 105ms","method":"POST","requestID":"1c5fb88028db027c6ea34864b644ed5c","responseTime":105,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26: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.109","http_referrer":"","http_user_agent":"node-fetch","requestID":"1c5fb88028db027c6ea34864b644ed5c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4Nn0.7U5uQMtWGw4kam6bD4mGsKnS6XmaVYsUgh11Vsmlq3Y","level":"info","message":"auth send jwt","requestID":"b9d1160110e7759f2867031f0b8d7a3d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b9d1160110e7759f2867031f0b8d7a3d","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/8cc47430-f32d-4b1c-b997-1f17faab6f9a' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"b9d1160110e7759f2867031f0b8d7a3d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1125,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1125,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.156968,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b9d1160110e7759f2867031f0b8d7a3d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615986,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4Nn0.7U5uQMtWGw4kam6bD4mGsKnS6XmaVYsUgh11Vsmlq3Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b9d1160110e7759f2867031f0b8d7a3d","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/93b3bf96-e1bb-47fe-b84c-5b777845dc70' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff161a842-de08-4c44-b14a-1524c7fa9d6a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"44f0aa10-bbeb-4500-b5a9-cd087e69e50c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615986.228883} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b9d1160110e7759f2867031f0b8d7a3d","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"85102622-118a-4229-9bf4-3d9ba8a3347b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615986.2343428} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b9d1160110e7759f2867031f0b8d7a3d","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff161a842-de08-4c44-b14a-1524c7fa9d6a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"b9750e26-007d-42f4-80df-0192a6769d2d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615986.2449346} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cff7bfc3-a436-4f6f-b227-0a5488f13c96","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615986.2452521} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"b9d1160110e7759f2867031f0b8d7a3d","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff161a842-de08-4c44-b14a-1524c7fa9d6a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff161a842-de08-4c44-b14a-1524c7fa9d6a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:26.244902411Z"}]},"request_id":"6a4eee35-5fe6-4a3a-9b7c-7021270bd8b4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615986.2498326} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b9d1160110e7759f2867031f0b8d7a3d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b9d1160110e7759f2867031f0b8d7a3d"} gateway-1 | {"time_local":"02/Aug/2024:16:26:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b9d1160110e7759f2867031f0b8d7a3d"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"b9d1160110e7759f2867031f0b8d7a3d","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4Nn0.7U5uQMtWGw4kam6bD4mGsKnS6XmaVYsUgh11Vsmlq3Y","level":"info","message":"auth send jwt","requestID":"e4960fae97d8155d5461a9fd5870af5b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e4960fae97d8155d5461a9fd5870af5b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e4960fae97d8155d5461a9fd5870af5b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1126,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:26Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1126,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.907156,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e4960fae97d8155d5461a9fd5870af5b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615986,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4Nn0.7U5uQMtWGw4kam6bD4mGsKnS6XmaVYsUgh11Vsmlq3Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e4960fae97d8155d5461a9fd5870af5b","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86ec8f47-5e74-407a-aa89-ccdf7d4586e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1d74f61b-ace5-442d-8c07-45f4ba943a74","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615986.274155} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e4960fae97d8155d5461a9fd5870af5b","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"58424fa9-eb1e-4131-9833-38bfd64b8676","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615986.279697} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e4960fae97d8155d5461a9fd5870af5b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86ec8f47-5e74-407a-aa89-ccdf7d4586e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"a73df959-e203-4e9e-bb09-142e1b80de25","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615986.2959375} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e57dfbac-19d3-4c45-bf27-b48998c3f047","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615986.296018} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"e4960fae97d8155d5461a9fd5870af5b","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86ec8f47-5e74-407a-aa89-ccdf7d4586e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86ec8f47-5e74-407a-aa89-ccdf7d4586e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:26.295893359Z"}]},"request_id":"2ea02ebc-a709-41fe-ad2c-c198e6bf9e94","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615986.3004932} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e4960fae97d8155d5461a9fd5870af5b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e4960fae97d8155d5461a9fd5870af5b"} gateway-1 | {"time_local":"02/Aug/2024:16:26:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e4960fae97d8155d5461a9fd5870af5b"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"e4960fae97d8155d5461a9fd5870af5b","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"89263c79bdac2c742a40fdbb66b9a6cf","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":"89263c79bdac2c742a40fdbb66b9a6cf","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3/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":"89263c79bdac2c742a40fdbb66b9a6cf"} device-1 | {"level":"info","message":"OPTIONS /devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3/websocket 200 1ms","method":"OPTIONS","requestID":"89263c79bdac2c742a40fdbb66b9a6cf","responseTime":1,"status":200,"url":"/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo","level":"info","message":"auth send jwt","requestID":"38738ce99ddf8c910c87dfbe8f6bf141"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"38738ce99ddf8c910c87dfbe8f6bf141","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"38738ce99ddf8c910c87dfbe8f6bf141"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"90f6b204a51feb6e7e95dd27a8e93a7d","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":"90f6b204a51feb6e7e95dd27a8e93a7d","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f161a842-de08-4c44-b14a-1524c7fa9d6a/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":"90f6b204a51feb6e7e95dd27a8e93a7d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1127,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} device-1 | {"level":"info","message":"OPTIONS /devices/f161a842-de08-4c44-b14a-1524c7fa9d6a/websocket 200 1ms","method":"OPTIONS","requestID":"90f6b204a51feb6e7e95dd27a8e93a7d","responseTime":1,"status":200,"url":"/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a/websocket"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1127,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.008591,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"38738ce99ddf8c910c87dfbe8f6bf141","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615988,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"38738ce99ddf8c910c87dfbe8f6bf141","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo","level":"info","message":"auth send jwt","requestID":"82676530fa6412cd6bcd437dd881186d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"82676530fa6412cd6bcd437dd881186d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"82676530fa6412cd6bcd437dd881186d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1128,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1128,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.050745,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"82676530fa6412cd6bcd437dd881186d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615988,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"82676530fa6412cd6bcd437dd881186d","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"38738ce99ddf8c910c87dfbe8f6bf141"} gateway-1 | {"time_local":"02/Aug/2024:16:26:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","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":"38738ce99ddf8c910c87dfbe8f6bf141"} device-1 | {"level":"info","message":"POST /devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3/websocket 200 21ms","method":"POST","requestID":"38738ce99ddf8c910c87dfbe8f6bf141","responseTime":21,"status":200,"url":"/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"82676530fa6412cd6bcd437dd881186d"} device-1 | {"level":"info","message":"POST /devices/f161a842-de08-4c44-b14a-1524c7fa9d6a/websocket 200 24ms","method":"POST","requestID":"82676530fa6412cd6bcd437dd881186d","responseTime":24,"status":200,"url":"/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:26:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f161a842-de08-4c44-b14a-1524c7fa9d6a/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":"82676530fa6412cd6bcd437dd881186d"} device-1 | {"level":"info","message":"device 'http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cf9839decb9cd16ba827cc473dd24a31","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":"cf9839decb9cd16ba827cc473dd24a31","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"cf9839decb9cd16ba827cc473dd24a31"} device-1 | {"level":"info","message":"OPTIONS /devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3? 200 1ms","method":"OPTIONS","requestID":"cf9839decb9cd16ba827cc473dd24a31","responseTime":1,"status":200,"url":"/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo","level":"info","message":"auth send jwt","requestID":"57d38b89102d65b335263000d1ee0f05"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"57d38b89102d65b335263000d1ee0f05","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"956c01e85b718398e8a4840918f34d9f","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)"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"57d38b89102d65b335263000d1ee0f05"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"956c01e85b718398e8a4840918f34d9f","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f161a842-de08-4c44-b14a-1524c7fa9d6a? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"956c01e85b718398e8a4840918f34d9f"} device-1 | {"level":"info","message":"OPTIONS /devices/f161a842-de08-4c44-b14a-1524c7fa9d6a? 200 1ms","method":"OPTIONS","requestID":"956c01e85b718398e8a4840918f34d9f","responseTime":1,"status":200,"url":"/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1129,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1129,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.003836,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"57d38b89102d65b335263000d1ee0f05","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615988,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"57d38b89102d65b335263000d1ee0f05","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo","level":"info","message":"auth send jwt","requestID":"67353483219e0b2aa192666f15f945a7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"67353483219e0b2aa192666f15f945a7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"67353483219e0b2aa192666f15f945a7"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86ec8f47-5e74-407a-aa89-ccdf7d4586e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86ec8f47-5e74-407a-aa89-ccdf7d4586e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:26.295893359Z"}]},"request_id":"43c54da4-84c2-4129-aa11-c9272a5f24ae","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.394827} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"57d38b89102d65b335263000d1ee0f05","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1130,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1130,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.040034,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"67353483219e0b2aa192666f15f945a7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615988,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"67353483219e0b2aa192666f15f945a7","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7d600ae1-f385-4ed6-b191-32c415ca2ad1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.4029772} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"57d38b89102d65b335263000d1ee0f05","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff161a842-de08-4c44-b14a-1524c7fa9d6a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff161a842-de08-4c44-b14a-1524c7fa9d6a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:26.244902411Z"}]},"request_id":"49b10097-9457-47ff-b984-fff6996370e7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.40817} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"67353483219e0b2aa192666f15f945a7","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"edd2f402-dfc9-4dc5-8732-59ea3a93ce14","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.4141657} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"67353483219e0b2aa192666f15f945a7","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86ec8f47-5e74-407a-aa89-ccdf7d4586e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86ec8f47-5e74-407a-aa89-ccdf7d4586e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:26.295893359Z"}]},"request_id":"6e551688-16fd-49cc-a34b-cfad7b946761","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.4240606} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"57d38b89102d65b335263000d1ee0f05","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"57d38b89102d65b335263000d1ee0f05"} device-1 | {"level":"info","message":"PATCH /devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3? 200 46ms","method":"PATCH","requestID":"57d38b89102d65b335263000d1ee0f05","responseTime":46,"status":200,"url":"/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.050","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":"57d38b89102d65b335263000d1ee0f05"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff161a842-de08-4c44-b14a-1524c7fa9d6a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff161a842-de08-4c44-b14a-1524c7fa9d6a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:26.244902411Z"}]},"request_id":"765633df-eb74-43d1-8762-a556bc61bd75","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.4373982} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"67353483219e0b2aa192666f15f945a7","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"67353483219e0b2aa192666f15f945a7"} gateway-1 | {"time_local":"02/Aug/2024:16:26:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f161a842-de08-4c44-b14a-1524c7fa9d6a? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.053","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":"67353483219e0b2aa192666f15f945a7"} device-1 | {"level":"info","message":"PATCH /devices/f161a842-de08-4c44-b14a-1524c7fa9d6a? 200 47ms","method":"PATCH","requestID":"67353483219e0b2aa192666f15f945a7","responseTime":47,"status":200,"url":"/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo","level":"info","message":"auth send jwt","requestID":"1b6ce0e56a161d2d9b18c31b319caebe"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1b6ce0e56a161d2d9b18c31b319caebe","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1b6ce0e56a161d2d9b18c31b319caebe"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1131,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1131,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.928543,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1b6ce0e56a161d2d9b18c31b319caebe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615988,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1b6ce0e56a161d2d9b18c31b319caebe","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff161a842-de08-4c44-b14a-1524c7fa9d6a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff161a842-de08-4c44-b14a-1524c7fa9d6a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:26.244902411Z"}]},"request_id":"ae25ec6e-9b2d-4e71-8a1a-df64fadba1dd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.4669077} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1b6ce0e56a161d2d9b18c31b319caebe","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1b6ce0e56a161d2d9b18c31b319caebe"} gateway-1 | {"time_local":"02/Aug/2024:16:26:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f161a842-de08-4c44-b14a-1524c7fa9d6a? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1b6ce0e56a161d2d9b18c31b319caebe"} device-1 | {"level":"info","message":"GET /devices/f161a842-de08-4c44-b14a-1524c7fa9d6a? 200 18ms","method":"GET","requestID":"1b6ce0e56a161d2d9b18c31b319caebe","responseTime":18,"status":200,"url":"/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo","level":"info","message":"auth send jwt","requestID":"68af93cb93acd514aaf929b6561d8f83"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"68af93cb93acd514aaf929b6561d8f83","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"68af93cb93acd514aaf929b6561d8f83"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1132,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1132,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.121757,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"68af93cb93acd514aaf929b6561d8f83","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615988,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"68af93cb93acd514aaf929b6561d8f83","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86ec8f47-5e74-407a-aa89-ccdf7d4586e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86ec8f47-5e74-407a-aa89-ccdf7d4586e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:26.295893359Z"}]},"request_id":"4008016d-6d04-47a6-8bf2-abf3f8e49dd7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.487074} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"68af93cb93acd514aaf929b6561d8f83","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"68af93cb93acd514aaf929b6561d8f83"} gateway-1 | {"time_local":"02/Aug/2024:16:26:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"68af93cb93acd514aaf929b6561d8f83"} device-1 | {"level":"info","message":"GET /devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3? 200 12ms","method":"GET","requestID":"68af93cb93acd514aaf929b6561d8f83","responseTime":12,"status":200,"url":"/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo","level":"info","message":"auth send jwt","requestID":"cb9c9e56601684713e2972f6a70fb0fc"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"cb9c9e56601684713e2972f6a70fb0fc","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"cb9c9e56601684713e2972f6a70fb0fc"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1133,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1133,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.713442,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cb9c9e56601684713e2972f6a70fb0fc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615988,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"cb9c9e56601684713e2972f6a70fb0fc","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7"},"level":"info","message":"Attempting to run experiment","requestID":"cb9c9e56601684713e2972f6a70fb0fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7"},"level":"info","message":"Attempting to book experiment","requestID":"cb9c9e56601684713e2972f6a70fb0fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7"},"level":"info","message":"Successfully booked experiment","requestID":"cb9c9e56601684713e2972f6a70fb0fc"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f84f7bf0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f84fca10-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1134,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1134,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.637124,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1135,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f84f7bf0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615988,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f84f7bf0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1135,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.6323,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f84fca10-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615988,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f84fca10-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff161a842-de08-4c44-b14a-1524c7fa9d6a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff161a842-de08-4c44-b14a-1524c7fa9d6a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:26.244902411Z"}]},"request_id":"d44bb186-580e-45e7-8152-c911cddef4b6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.5350294} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f84f7bf0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86ec8f47-5e74-407a-aa89-ccdf7d4586e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86ec8f47-5e74-407a-aa89-ccdf7d4586e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:26.295893359Z"}]},"request_id":"9dbc06fa-84c3-4d0e-93d4-baac85445a0f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.535825} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f84fca10-50eb-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f84f7bf0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/f161a842-de08-4c44-b14a-1524c7fa9d6a? 200 12ms","method":"GET","requestID":"f84f7bf0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f84fca10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3? 200 11ms","method":"GET","requestID":"f84fca10-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7"},"level":"info","message":"Setting up experiment","requestID":"cb9c9e56601684713e2972f6a70fb0fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"cb9c9e56601684713e2972f6a70fb0fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7"},"level":"info","message":"Successfully locked booking for experiment","requestID":"cb9c9e56601684713e2972f6a70fb0fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"cb9c9e56601684713e2972f6a70fb0fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"cb9c9e56601684713e2972f6a70fb0fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7"},"level":"info","message":"Attempting to update booking for experiment","requestID":"cb9c9e56601684713e2972f6a70fb0fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7"},"level":"info","message":"Successfully updated booking for experiment","requestID":"cb9c9e56601684713e2972f6a70fb0fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7"},"level":"info","message":"Successfully set up experiment","requestID":"cb9c9e56601684713e2972f6a70fb0fc"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f8576b30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f857b950-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f857e060-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7"},"level":"info","message":"Successfully running experiment","requestID":"cb9c9e56601684713e2972f6a70fb0fc"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1136,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1137,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1136,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.98915,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1137,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.83969,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f8576b30-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615988,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f8576b30-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f857b950-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615988,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f857b950-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff161a842-de08-4c44-b14a-1524c7fa9d6a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff161a842-de08-4c44-b14a-1524c7fa9d6a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:26.244902411Z"}]},"request_id":"768827e2-7be9-4270-8726-7a06882c30c3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.591423} authorization-1 | {"client_addr":"127.0.0.1:42288","level":"info","msg":"Received request.","req_id":1138,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f8576b30-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86ec8f47-5e74-407a-aa89-ccdf7d4586e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86ec8f47-5e74-407a-aa89-ccdf7d4586e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:26.295893359Z"}]},"request_id":"bb836206-d3ce-490f-896c-2a0cbcee23b0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.5934207} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f857b950-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff161a842-de08-4c44-b14a-1524c7fa9d6a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3ee23c2a-8cc0-4a26-a84a-c943c7392c51","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.5944803} authorization-1 | {"client_addr":"127.0.0.1:42288","level":"info","msg":"Sent response.","req_id":1138,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.704626,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f857e060-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a","object_type":"device","rebac_allow":false,"scope_allow":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":"f857e060-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f8576b30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/f161a842-de08-4c44-b14a-1524c7fa9d6a? 200 20ms","method":"GET","requestID":"f8576b30-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f857b950-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3? 200 19ms","method":"GET","requestID":"f857b950-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f857e060-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f161a842-de08-4c44-b14a-1524c7fa9d6a/signaling 200 18ms","method":"POST","requestID":"f857e060-50eb-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f85aeda0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f85b3bc0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4dd1bff3-8156-4b10-bb2e-40ab93b62fc7#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4dd1bff3-8156-4b10-bb2e-40ab93b62fc7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"3b30162a-055b-4318-9bc5-a662a89f7d8d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.6043072} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fa96680a-6a27-46d5-a6f3-c24866be3503","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.604773} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1139,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"cb9c9e56601684713e2972f6a70fb0fc","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1139,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.662117,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1140,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff161a842-de08-4c44-b14a-1524c7fa9d6a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1caa7027-c225-4f5a-9499-5edbb4d7a9c7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.6072204} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f85aeda0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a","object_type":"device","rebac_allow":false,"scope_allow":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":"f85aeda0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86ec8f47-5e74-407a-aa89-ccdf7d4586e3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ac98b4f4-61ef-4468-887b-18df83ea0fa7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.6110106} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1140,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.078798,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"cb9c9e56601684713e2972f6a70fb0fc"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f85b3bc0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3","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":"02/Aug/2024:16:26:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1212","request_time":"0.122","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cb9c9e56601684713e2972f6a70fb0fc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f85b3bc0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /experiments? 201 118ms","method":"POST","requestID":"cb9c9e56601684713e2972f6a70fb0fc","responseTime":118,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f85aeda0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f161a842-de08-4c44-b14a-1524c7fa9d6a/signaling 200 12ms","method":"POST","requestID":"f85aeda0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f85d3790-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo","level":"info","message":"auth send jwt","requestID":"c503e10cd666c8b844d307102e793868"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f85b3bc0-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c503e10cd666c8b844d307102e793868","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3/signaling 200 14ms","method":"POST","requestID":"f85b3bc0-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c503e10cd666c8b844d307102e793868"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1141,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86ec8f47-5e74-407a-aa89-ccdf7d4586e3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"43ea8311-963e-450b-9abe-8de10cb65f7e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.6215115} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1142,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1141,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.515123,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1142,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.761903,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f85d3790-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3","object_type":"device","rebac_allow":false,"scope_allow":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":"f85d3790-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c503e10cd666c8b844d307102e793868","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615988,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c503e10cd666c8b844d307102e793868","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f85d3790-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3/signaling 200 11ms","method":"POST","requestID":"f85d3790-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3/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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff161a842-de08-4c44-b14a-1524c7fa9d6a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff161a842-de08-4c44-b14a-1524c7fa9d6a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:26.244902411Z"}]},"request_id":"e1df221e-bd4b-4a99-b784-65bbd70be2b2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.628614} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"cb9c9e56601684713e2972f6a70fb0fc"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c503e10cd666c8b844d307102e793868","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f85f3360-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f85f5a70-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c503e10cd666c8b844d307102e793868"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1143,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1143,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.663831,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1144,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} gateway-1 | {"time_local":"02/Aug/2024:16:26:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f161a842-de08-4c44-b14a-1524c7fa9d6a? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c503e10cd666c8b844d307102e793868"} device-1 | {"level":"info","message":"GET /devices/f161a842-de08-4c44-b14a-1524c7fa9d6a? 200 14ms","method":"GET","requestID":"c503e10cd666c8b844d307102e793868","responseTime":14,"status":200,"url":"/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f85f3360-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615988,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f85f3360-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1144,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.66923,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f85f5a70-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615988,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f85f5a70-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo","level":"info","message":"auth send jwt","requestID":"4b9f42090835dc7ad5645b6aef978dab"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4b9f42090835dc7ad5645b6aef978dab","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4b9f42090835dc7ad5645b6aef978dab"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff161a842-de08-4c44-b14a-1524c7fa9d6a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff161a842-de08-4c44-b14a-1524c7fa9d6a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:26.244902411Z"}]},"request_id":"fe4a99db-ec51-487e-a379-3b9870ed796b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.6411042} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86ec8f47-5e74-407a-aa89-ccdf7d4586e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86ec8f47-5e74-407a-aa89-ccdf7d4586e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:26.295893359Z"}]},"request_id":"c238188d-2853-4407-a918-67249d00a026","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.6416204} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f85f3360-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f85f5a70-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1145,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1145,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.991477,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"4b9f42090835dc7ad5645b6aef978dab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615988,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4b9f42090835dc7ad5645b6aef978dab","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f85f3360-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86ec8f47-5e74-407a-aa89-ccdf7d4586e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86ec8f47-5e74-407a-aa89-ccdf7d4586e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:26.295893359Z"}]},"request_id":"de26792b-ad71-4c2a-a37f-6a7fab61e87f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.647604} device-1 | {"level":"info","message":"GET /devices/f161a842-de08-4c44-b14a-1524c7fa9d6a? 200 17ms","method":"GET","requestID":"f85f3360-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f85f5a70-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4b9f42090835dc7ad5645b6aef978dab","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3? 200 17ms","method":"GET","requestID":"f85f5a70-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7"},"level":"info","message":"Building connection plan","requestID":"cb9c9e56601684713e2972f6a70fb0fc"} 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":"775d71ab-1adc-4457-b5c5-a712f8993a5d"},{"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":"90346b74-193e-4f11-a1d4-d0aec841952f"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"eb7fb9eb-479c-4c30-9c53-fc25a89343b8"}]},"level":"info","message":"Built pairwise service configurations","requestID":"cb9c9e56601684713e2972f6a70fb0fc"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"cb9c9e56601684713e2972f6a70fb0fc"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4b9f42090835dc7ad5645b6aef978dab"} gateway-1 | {"time_local":"02/Aug/2024:16:26:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4b9f42090835dc7ad5645b6aef978dab"} device-1 | {"level":"info","message":"GET /devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3? 200 11ms","method":"GET","requestID":"4b9f42090835dc7ad5645b6aef978dab","responseTime":11,"status":200,"url":"/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f86267b0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1146,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1146,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.080641,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f86267b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615988,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f86267b0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"ee5a4774-d298-454b-8fe9-9c82d8b0e5c5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.6614673} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e627e6a3-43c0-4a82-89e1-a01c6a81adbb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.661633} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f86267b0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f86267b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f86267b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/188d078d-b677-4a58-8441-c35b24bcf400'","requestID":"f86267b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/188d078d-b677-4a58-8441-c35b24bcf400'","requestID":"f86267b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f86267b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 22ms","method":"POST","requestID":"f86267b0-50eb-11ef-8434-2f6d198c7397","responseTime":22,"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":"f86267b0-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"cb9c9e56601684713e2972f6a70fb0fc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f869e1c0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1147,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff161a842-de08-4c44-b14a-1524c7fa9d6a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0de6eadd-25e8-46c9-bb45-2c6a496e9ae8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.7048485} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1147,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.609715,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f869e1c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a","object_type":"device","rebac_allow":false,"scope_allow":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":"f869e1c0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f869e1c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f161a842-de08-4c44-b14a-1524c7fa9d6a/signaling 200 11ms","method":"POST","requestID":"f869e1c0-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a/signaling"} device-1 | {"device":"86ec8f47-5e74-407a-aa89-ccdf7d4586e3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"86ec8f47-5e74-407a-aa89-ccdf7d4586e3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f86c04a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"device":"f161a842-de08-4c44-b14a-1524c7fa9d6a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"f161a842-de08-4c44-b14a-1524c7fa9d6a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1148,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86ec8f47-5e74-407a-aa89-ccdf7d4586e3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fe657f1f-33ed-4e89-b789-eaf6f4009b49","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.719291} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1148,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.583381,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f86c04a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3","object_type":"device","rebac_allow":false,"scope_allow":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":"f86c04a0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f86c04a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3/signaling 200 10ms","method":"POST","requestID":"f86c04a0-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 920378169419632080 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:AkaS\r\na=ice-pwd:yfa2g96DLo7ouIFM/Xb6m3mG\r\na=ice-options:trickle\r\na=fingerprint:sha-256 88:D3:4C:D3:35:2E:F7:B1:EF:C9:53:59:48:73:29:B8:07:DE:F1:C2:0F:F8:D3:5B:66:CB:3D:DC:37:AF:25:32\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"86ec8f47-5e74-407a-aa89-ccdf7d4586e3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 1817585319435783238 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:Ciaw\r\na=ice-pwd:yLd24Ki0weyscrdr+/zHV7St\r\na=ice-options:trickle\r\na=fingerprint:sha-256 9A:1F:D1:A1:70:A4:16:C1:98:B5:B5:B0:B4:7B:3B:EB:31:16:15:B4:BE:91:8E:72:42:23:D4:27:C2:B9:45:5E\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"f161a842-de08-4c44-b14a-1524c7fa9d6a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3840369431 1 udp 2113937151 38e1d5b7-7f6d-4898-b090-457399072705.local 48406 typ host generation 0 ufrag Ciaw network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f161a842-de08-4c44-b14a-1524c7fa9d6a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3971950800 1 udp 1677729535 141.24.211.56 48406 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag Ciaw network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f161a842-de08-4c44-b14a-1524c7fa9d6a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a'"} device-1 | {"content":{"candidate":"candidate:1518096847 1 udp 2113937151 0563e200-c630-46ed-b21f-a82952146eea.local 42802 typ host generation 0 ufrag AkaS network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"86ec8f47-5e74-407a-aa89-ccdf7d4586e3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1378097672 1 udp 1677729535 141.24.211.56 42802 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag AkaS network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"86ec8f47-5e74-407a-aa89-ccdf7d4586e3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3'"} device-1 | {"device":"86ec8f47-5e74-407a-aa89-ccdf7d4586e3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"f161a842-de08-4c44-b14a-1524c7fa9d6a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/188d078d-b677-4a58-8441-c35b24bcf400' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"188d078d-b677-4a58-8441-c35b24bcf400","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"86ec8f47-5e74-407a-aa89-ccdf7d4586e3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"f161a842-de08-4c44-b14a-1524c7fa9d6a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c70380f9deef936beb9396e6d303b8c5","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":"c70380f9deef936beb9396e6d303b8c5","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/188d078d-b677-4a58-8441-c35b24bcf400"}}},"level":"info","message":"received a callback","requestID":"c70380f9deef936beb9396e6d303b8c5"} device-1 | {"device":"86ec8f47-5e74-407a-aa89-ccdf7d4586e3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"c70380f9deef936beb9396e6d303b8c5","responseTime":4,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:28 +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":"c70380f9deef936beb9396e6d303b8c5"} device-1 | {"device":"f161a842-de08-4c44-b14a-1524c7fa9d6a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"f161a842-de08-4c44-b14a-1524c7fa9d6a","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"188d078d-b677-4a58-8441-c35b24bcf400","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"188d078d-b677-4a58-8441-c35b24bcf400","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/188d078d-b677-4a58-8441-c35b24bcf400' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"188d078d-b677-4a58-8441-c35b24bcf400","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"294af19e2d38d2106bf66b9c6b644daa","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":"294af19e2d38d2106bf66b9c6b644daa","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/188d078d-b677-4a58-8441-c35b24bcf400"}}},"level":"info","message":"received a callback","requestID":"294af19e2d38d2106bf66b9c6b644daa"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"f87839a0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1149,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F188d078d-b677-4a58-8441-c35b24bcf400","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d594bf2e-b808-429c-8d81-565566b02258","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.7989323} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1149,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.970246,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/188d078d-b677-4a58-8441-c35b24bcf400","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f87839a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/188d078d-b677-4a58-8441-c35b24bcf400","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":"f87839a0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"f87839a0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/188d078d-b677-4a58-8441-c35b24bcf400 200 8ms","method":"GET","requestID":"f87839a0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/peerconnections/188d078d-b677-4a58-8441-c35b24bcf400"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 29ms","method":"POST","requestID":"294af19e2d38d2106bf66b9c6b644daa","responseTime":29,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:28 +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":"294af19e2d38d2106bf66b9c6b644daa"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f87c3140-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1150,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff161a842-de08-4c44-b14a-1524c7fa9d6a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"60258efb-9804-4973-af15-e56d4c5dec46","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.8244126} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1150,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.169612,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f87c3140-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a","object_type":"device","rebac_allow":false,"scope_allow":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":"f87c3140-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f87c3140-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f161a842-de08-4c44-b14a-1524c7fa9d6a/signaling 200 8ms","method":"POST","requestID":"f87c3140-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f87db7e0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1151,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86ec8f47-5e74-407a-aa89-ccdf7d4586e3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1f2d7589-8f52-43f5-ac52-47c626e8398d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.8337657} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1151,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.120643,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f87db7e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3","object_type":"device","rebac_allow":false,"scope_allow":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":"f87db7e0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f87db7e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3/signaling 200 7ms","method":"POST","requestID":"f87db7e0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo","level":"info","message":"auth send jwt","requestID":"ace3fb918b2209ebcda5cf3927a947c5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ace3fb918b2209ebcda5cf3927a947c5","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7","requestID":"ace3fb918b2209ebcda5cf3927a947c5"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1152,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1152,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.637016,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ace3fb918b2209ebcda5cf3927a947c5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615988,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"ace3fb918b2209ebcda5cf3927a947c5","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7","requestID":"ace3fb918b2209ebcda5cf3927a947c5"} gateway-1 | {"time_local":"02/Aug/2024:16:26:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7 HTTP/1.1","status": "200","body_bytes_sent":"1285","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ace3fb918b2209ebcda5cf3927a947c5"} experiment-1 | {"level":"info","message":"GET /experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7 200 10ms","method":"GET","requestID":"ace3fb918b2209ebcda5cf3927a947c5","responseTime":10,"status":200,"url":"/experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo","level":"info","message":"auth send jwt","requestID":"245e6de36abc371ba7416b1c35cbce97"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"245e6de36abc371ba7416b1c35cbce97","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7","requestID":"245e6de36abc371ba7416b1c35cbce97"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1153,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1153,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.127403,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"245e6de36abc371ba7416b1c35cbce97","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615988,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"245e6de36abc371ba7416b1c35cbce97","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7"},"level":"info","message":"Attempting to finish experiment","requestID":"245e6de36abc371ba7416b1c35cbce97"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"f887f110-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1154,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1154,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.016287,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/188d078d-b677-4a58-8441-c35b24bcf400","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f887f110-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/188d078d-b677-4a58-8441-c35b24bcf400","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615988,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OH0.PZRs1An6unGMbLCgsuOt_hs4ZlGtztzXLti1gUylvLo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f887f110-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/188d078d-b677-4a58-8441-c35b24bcf400","device":"f161a842-de08-4c44-b14a-1524c7fa9d6a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/188d078d-b677-4a58-8441-c35b24bcf400","device":"86ec8f47-5e74-407a-aa89-ccdf7d4586e3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/188d078d-b677-4a58-8441-c35b24bcf400' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/188d078d-b677-4a58-8441-c35b24bcf400' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"188d078d-b677-4a58-8441-c35b24bcf400","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F188d078d-b677-4a58-8441-c35b24bcf400': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F188d078d-b677-4a58-8441-c35b24bcf400","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"e71a28ac-ef1e-4410-b3dc-52b3a1e1f095","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.915098} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cf038d65-cf05-4d81-86d6-1658e37f4cfe","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.9152772} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"00c0e195e307cee084c2d8999e86e7c7","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 6ms","method":"POST","requestID":"f887f110-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"00c0e195e307cee084c2d8999e86e7c7","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"21503cb6b4256887a9e8d01ca4825675","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":"21503cb6b4256887a9e8d01ca4825675","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/188d078d-b677-4a58-8441-c35b24bcf400"}}},"level":"info","message":"received a callback","requestID":"00c0e195e307cee084c2d8999e86e7c7"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/188d078d-b677-4a58-8441-c35b24bcf400"}}},"level":"info","message":"received a callback","requestID":"21503cb6b4256887a9e8d01ca4825675"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"f887f110-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/188d078d-b677-4a58-8441-c35b24bcf400 204 38ms","method":"DELETE","requestID":"f887f110-50eb-11ef-8434-2f6d198c7397","responseTime":38,"status":204,"url":"/peerconnections/188d078d-b677-4a58-8441-c35b24bcf400"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7"},"level":"info","message":"Successfully finished experiment","requestID":"245e6de36abc371ba7416b1c35cbce97"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f89118d0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1155,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff161a842-de08-4c44-b14a-1524c7fa9d6a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f91fe898-1f8f-4a9d-bc12-cb13b1dd45e8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.9635034} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1155,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.548056,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f89118d0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a","object_type":"device","rebac_allow":false,"scope_allow":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":"f89118d0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f89118d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f161a842-de08-4c44-b14a-1524c7fa9d6a/signaling 200 12ms","method":"POST","requestID":"f89118d0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4dd1bff3-8156-4b10-bb2e-40ab93b62fc7': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4dd1bff3-8156-4b10-bb2e-40ab93b62fc7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"1ac01e1e-9c7b-4a3c-860d-ae9fb7bcbd0e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.972063} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f89362c0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f8089e8c-fe72-487e-807b-505b0b9586d9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.972482} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"245e6de36abc371ba7416b1c35cbce97","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1156,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F86ec8f47-5e74-407a-aa89-ccdf7d4586e3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9301602e-e5d5-4e04-abb2-4a327d7cb2ac","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615988.9774303} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1156,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.687581,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f89362c0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3","object_type":"device","rebac_allow":false,"scope_allow":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":"f89362c0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f89362c0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3/signaling 200 11ms","method":"POST","requestID":"f89362c0-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7","requestID":"245e6de36abc371ba7416b1c35cbce97"} gateway-1 | {"time_local":"02/Aug/2024:16:26:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7 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":"245e6de36abc371ba7416b1c35cbce97"} experiment-1 | {"level":"info","message":"DELETE /experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7 204 149ms","method":"DELETE","requestID":"245e6de36abc371ba7416b1c35cbce97","responseTime":149,"status":204,"url":"/experiments/4dd1bff3-8156-4b10-bb2e-40ab93b62fc7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"00c0e195e307cee084c2d8999e86e7c7","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26: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.123","http_referrer":"","http_user_agent":"node-fetch","requestID":"00c0e195e307cee084c2d8999e86e7c7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"21503cb6b4256887a9e8d01ca4825675","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26: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.124","http_referrer":"","http_user_agent":"node-fetch","requestID":"21503cb6b4256887a9e8d01ca4825675"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OX0.kXguALHqmj3NokMvTliICj2jRLt8yoAJ_xx8VSDr220","level":"info","message":"auth send jwt","requestID":"5fda2e5df09a1ca9ab40bb420190a4bf"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5fda2e5df09a1ca9ab40bb420190a4bf","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5fda2e5df09a1ca9ab40bb420190a4bf"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1157,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1157,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.871907,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"5fda2e5df09a1ca9ab40bb420190a4bf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615989,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OX0.kXguALHqmj3NokMvTliICj2jRLt8yoAJ_xx8VSDr220"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5fda2e5df09a1ca9ab40bb420190a4bf","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:26:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3281","request_time":"0.702","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":"af7c829bbb00d67c48758c297b412a54"} gateway-1 | {"time_local":"02/Aug/2024:16:26:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3280","request_time":"0.714","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":"6d876b2792722248fdb2e3efdc9d6687"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0467c06b-5932-4117-ac8b-3eada252c76a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8039f447-cb9c-4dae-8a46-2c131084dc6f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615989.0671856} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f161a842-de08-4c44-b14a-1524c7fa9d6a' closed"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5fda2e5df09a1ca9ab40bb420190a4bf","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"587cae25-d80a-4b7c-91d9-728210da5b4b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615989.0713959} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/86ec8f47-5e74-407a-aa89-ccdf7d4586e3' closed"} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"5fda2e5df09a1ca9ab40bb420190a4bf","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0467c06b-5932-4117-ac8b-3eada252c76a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"8b2cc5f8-67f7-4265-a421-6b43d80bc7a7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615989.08276} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"de01c2ef-5a24-4873-9130-0fe9ed517c02","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615989.0829146} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"5fda2e5df09a1ca9ab40bb420190a4bf","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0467c06b-5932-4117-ac8b-3eada252c76a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0467c06b-5932-4117-ac8b-3eada252c76a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:29.082723281Z"}]},"request_id":"680333cc-ca3b-4679-8d08-59c7a9b3f65e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615989.0863876} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5fda2e5df09a1ca9ab40bb420190a4bf","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5fda2e5df09a1ca9ab40bb420190a4bf"} gateway-1 | {"time_local":"02/Aug/2024:16:26:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5fda2e5df09a1ca9ab40bb420190a4bf"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"5fda2e5df09a1ca9ab40bb420190a4bf","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OX0.kXguALHqmj3NokMvTliICj2jRLt8yoAJ_xx8VSDr220","level":"info","message":"auth send jwt","requestID":"5520356c8bbc2a9a215b215067669bd9"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5520356c8bbc2a9a215b215067669bd9","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5520356c8bbc2a9a215b215067669bd9"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1158,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:29Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1158,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.711878,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"5520356c8bbc2a9a215b215067669bd9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615989,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk4OX0.kXguALHqmj3NokMvTliICj2jRLt8yoAJ_xx8VSDr220"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5520356c8bbc2a9a215b215067669bd9","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6129f885-2f33-4ecb-b1ec-326d123530d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"64793205-8b22-4645-9f39-592bf5bc1c7b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615989.110597} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5520356c8bbc2a9a215b215067669bd9","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a68cfc63-1c4d-4e17-9668-2814aef5e919","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615989.1155605} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"5520356c8bbc2a9a215b215067669bd9","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6129f885-2f33-4ecb-b1ec-326d123530d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"6b6a9f9e-f99f-463d-b193-a3af0a5b0bcf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615989.1305172} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b70ec627-6daa-4c9d-9b9e-e6e22e68e1dd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615989.1306884} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"5520356c8bbc2a9a215b215067669bd9","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6129f885-2f33-4ecb-b1ec-326d123530d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6129f885-2f33-4ecb-b1ec-326d123530d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:29.130482709Z"}]},"request_id":"46bb5abe-f975-4992-8536-71d6a92f775c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615989.1337864} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5520356c8bbc2a9a215b215067669bd9","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5520356c8bbc2a9a215b215067669bd9"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"5520356c8bbc2a9a215b215067669bd9","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5520356c8bbc2a9a215b215067669bd9"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"852360c91f1251a4e58e2db9d06d1a10","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":"852360c91f1251a4e58e2db9d06d1a10","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/0467c06b-5932-4117-ac8b-3eada252c76a/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":"852360c91f1251a4e58e2db9d06d1a10"} device-1 | {"level":"info","message":"OPTIONS /devices/0467c06b-5932-4117-ac8b-3eada252c76a/websocket 200 1ms","method":"OPTIONS","requestID":"852360c91f1251a4e58e2db9d06d1a10","responseTime":1,"status":200,"url":"/devices/0467c06b-5932-4117-ac8b-3eada252c76a/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4","level":"info","message":"auth send jwt","requestID":"fab99f2fcab144e1056a3be8b8b56c7c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fab99f2fcab144e1056a3be8b8b56c7c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"fab99f2fcab144e1056a3be8b8b56c7c"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1159,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1159,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.919422,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fab99f2fcab144e1056a3be8b8b56c7c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615991,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fab99f2fcab144e1056a3be8b8b56c7c","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"00cb20c977f7e3633a13bbc0f3baffb5","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":"00cb20c977f7e3633a13bbc0f3baffb5","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6129f885-2f33-4ecb-b1ec-326d123530d6/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":"00cb20c977f7e3633a13bbc0f3baffb5"} device-1 | {"level":"info","message":"OPTIONS /devices/6129f885-2f33-4ecb-b1ec-326d123530d6/websocket 200 1ms","method":"OPTIONS","requestID":"00cb20c977f7e3633a13bbc0f3baffb5","responseTime":1,"status":200,"url":"/devices/6129f885-2f33-4ecb-b1ec-326d123530d6/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"fab99f2fcab144e1056a3be8b8b56c7c"} gateway-1 | {"time_local":"02/Aug/2024:16:26:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/0467c06b-5932-4117-ac8b-3eada252c76a/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":"fab99f2fcab144e1056a3be8b8b56c7c"} device-1 | {"level":"info","message":"POST /devices/0467c06b-5932-4117-ac8b-3eada252c76a/websocket 200 21ms","method":"POST","requestID":"fab99f2fcab144e1056a3be8b8b56c7c","responseTime":21,"status":200,"url":"/devices/0467c06b-5932-4117-ac8b-3eada252c76a/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4","level":"info","message":"auth send jwt","requestID":"9607feab5ec1876f7de8ca0b0a95a1bd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9607feab5ec1876f7de8ca0b0a95a1bd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9607feab5ec1876f7de8ca0b0a95a1bd"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1160,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1160,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.766121,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"9607feab5ec1876f7de8ca0b0a95a1bd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615991,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9607feab5ec1876f7de8ca0b0a95a1bd","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9607feab5ec1876f7de8ca0b0a95a1bd"} gateway-1 | {"time_local":"02/Aug/2024:16:26:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6129f885-2f33-4ecb-b1ec-326d123530d6/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":"9607feab5ec1876f7de8ca0b0a95a1bd"} device-1 | {"level":"info","message":"POST /devices/6129f885-2f33-4ecb-b1ec-326d123530d6/websocket 200 22ms","method":"POST","requestID":"9607feab5ec1876f7de8ca0b0a95a1bd","responseTime":22,"status":200,"url":"/devices/6129f885-2f33-4ecb-b1ec-326d123530d6/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"95939e149ce110d3a4119b2a00a601fd","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":"95939e149ce110d3a4119b2a00a601fd","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6' connected"} gateway-1 | {"time_local":"02/Aug/2024:16:26:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/0467c06b-5932-4117-ac8b-3eada252c76a? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"95939e149ce110d3a4119b2a00a601fd"} device-1 | {"level":"info","message":"OPTIONS /devices/0467c06b-5932-4117-ac8b-3eada252c76a? 200 1ms","method":"OPTIONS","requestID":"95939e149ce110d3a4119b2a00a601fd","responseTime":1,"status":200,"url":"/devices/0467c06b-5932-4117-ac8b-3eada252c76a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4","level":"info","message":"auth send jwt","requestID":"78bb18e14a4a06729f1f97ca434debaa"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"78bb18e14a4a06729f1f97ca434debaa","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"78bb18e14a4a06729f1f97ca434debaa"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1161,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1161,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.918765,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"78bb18e14a4a06729f1f97ca434debaa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615991,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"78bb18e14a4a06729f1f97ca434debaa","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3f3aeef9f42f63d6846d6d493e8d21d0","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":"3f3aeef9f42f63d6846d6d493e8d21d0","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6129f885-2f33-4ecb-b1ec-326d123530d6? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"3f3aeef9f42f63d6846d6d493e8d21d0"} device-1 | {"level":"info","message":"OPTIONS /devices/6129f885-2f33-4ecb-b1ec-326d123530d6? 200 0ms","method":"OPTIONS","requestID":"3f3aeef9f42f63d6846d6d493e8d21d0","responseTime":0,"status":200,"url":"/devices/6129f885-2f33-4ecb-b1ec-326d123530d6?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0467c06b-5932-4117-ac8b-3eada252c76a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0467c06b-5932-4117-ac8b-3eada252c76a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:29.082723281Z"}]},"request_id":"f4d8d14e-46e8-473a-90c2-21c7d9327745","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.196662} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"78bb18e14a4a06729f1f97ca434debaa","responseTime":3,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4","level":"info","message":"auth send jwt","requestID":"6e23dcc71afe431618701480119eabbb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6e23dcc71afe431618701480119eabbb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"6e23dcc71afe431618701480119eabbb"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cd6d6c30-126d-490a-ab02-a1e11dc018a5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.2024317} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"78bb18e14a4a06729f1f97ca434debaa","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1162,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1162,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.898068,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"6e23dcc71afe431618701480119eabbb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615991,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6e23dcc71afe431618701480119eabbb","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0467c06b-5932-4117-ac8b-3eada252c76a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0467c06b-5932-4117-ac8b-3eada252c76a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:29.082723281Z"}]},"request_id":"8833d374-816d-442c-8955-4488ab8c7d66","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.2157178} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"78bb18e14a4a06729f1f97ca434debaa","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6129f885-2f33-4ecb-b1ec-326d123530d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6129f885-2f33-4ecb-b1ec-326d123530d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:29.130482709Z"}]},"request_id":"2c34e25d-8035-4b94-ac0e-3387a8d5118c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.2175274} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"78bb18e14a4a06729f1f97ca434debaa"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6e23dcc71afe431618701480119eabbb","responseTime":4,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"02/Aug/2024:16:26:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/0467c06b-5932-4117-ac8b-3eada252c76a? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"78bb18e14a4a06729f1f97ca434debaa"} device-1 | {"level":"info","message":"PATCH /devices/0467c06b-5932-4117-ac8b-3eada252c76a? 200 33ms","method":"PATCH","requestID":"78bb18e14a4a06729f1f97ca434debaa","responseTime":33,"status":200,"url":"/devices/0467c06b-5932-4117-ac8b-3eada252c76a?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"631adcc2-e017-4046-95e4-cb661876d775","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.2253442} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"6e23dcc71afe431618701480119eabbb","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6129f885-2f33-4ecb-b1ec-326d123530d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6129f885-2f33-4ecb-b1ec-326d123530d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:29.130482709Z"}]},"request_id":"dd91ee08-b591-491f-a034-edfa62bb8933","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.240779} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6e23dcc71afe431618701480119eabbb","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"6e23dcc71afe431618701480119eabbb"} device-1 | {"level":"info","message":"PATCH /devices/6129f885-2f33-4ecb-b1ec-326d123530d6? 200 42ms","method":"PATCH","requestID":"6e23dcc71afe431618701480119eabbb","responseTime":42,"status":200,"url":"/devices/6129f885-2f33-4ecb-b1ec-326d123530d6?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6129f885-2f33-4ecb-b1ec-326d123530d6? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"6e23dcc71afe431618701480119eabbb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4","level":"info","message":"auth send jwt","requestID":"e1ee29aecf8646d274c75004287d33a8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e1ee29aecf8646d274c75004287d33a8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e1ee29aecf8646d274c75004287d33a8"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1163,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1163,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.650578,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e1ee29aecf8646d274c75004287d33a8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615991,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e1ee29aecf8646d274c75004287d33a8","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0467c06b-5932-4117-ac8b-3eada252c76a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0467c06b-5932-4117-ac8b-3eada252c76a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:29.082723281Z"}]},"request_id":"8f7b18f1-9650-4320-8ef5-4efe1b915963","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.261069} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e1ee29aecf8646d274c75004287d33a8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e1ee29aecf8646d274c75004287d33a8"} device-1 | {"level":"info","message":"GET /devices/0467c06b-5932-4117-ac8b-3eada252c76a? 200 13ms","method":"GET","requestID":"e1ee29aecf8646d274c75004287d33a8","responseTime":13,"status":200,"url":"/devices/0467c06b-5932-4117-ac8b-3eada252c76a?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0467c06b-5932-4117-ac8b-3eada252c76a? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e1ee29aecf8646d274c75004287d33a8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4","level":"info","message":"auth send jwt","requestID":"6d16e0adc70ed5166cd5c79853c2730e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6d16e0adc70ed5166cd5c79853c2730e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d16e0adc70ed5166cd5c79853c2730e"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1164,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1164,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.362553,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"6d16e0adc70ed5166cd5c79853c2730e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615991,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6d16e0adc70ed5166cd5c79853c2730e","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6129f885-2f33-4ecb-b1ec-326d123530d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6129f885-2f33-4ecb-b1ec-326d123530d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:29.130482709Z"}]},"request_id":"044f13e9-fd2d-40c4-ab94-8a0490e047a6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.2809417} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6d16e0adc70ed5166cd5c79853c2730e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d16e0adc70ed5166cd5c79853c2730e"} device-1 | {"level":"info","message":"GET /devices/6129f885-2f33-4ecb-b1ec-326d123530d6? 200 13ms","method":"GET","requestID":"6d16e0adc70ed5166cd5c79853c2730e","responseTime":13,"status":200,"url":"/devices/6129f885-2f33-4ecb-b1ec-326d123530d6?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6129f885-2f33-4ecb-b1ec-326d123530d6? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6d16e0adc70ed5166cd5c79853c2730e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4","level":"info","message":"auth send jwt","requestID":"93212bd2ad67b993a418f3f8ea8426e2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"93212bd2ad67b993a418f3f8ea8426e2","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"93212bd2ad67b993a418f3f8ea8426e2"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1165,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1165,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.186136,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"93212bd2ad67b993a418f3f8ea8426e2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615991,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"93212bd2ad67b993a418f3f8ea8426e2","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12"},"level":"info","message":"Attempting to run experiment","requestID":"93212bd2ad67b993a418f3f8ea8426e2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12"},"level":"info","message":"Attempting to book experiment","requestID":"93212bd2ad67b993a418f3f8ea8426e2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12"},"level":"info","message":"Successfully booked experiment","requestID":"93212bd2ad67b993a418f3f8ea8426e2"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f9fba550-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f9fbf370-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1166,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1166,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.772952,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1167,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f9fba550-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615991,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f9fba550-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1167,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.34608,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f9fbf370-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615991,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f9fbf370-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0467c06b-5932-4117-ac8b-3eada252c76a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0467c06b-5932-4117-ac8b-3eada252c76a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:29.082723281Z"}]},"request_id":"b8d12451-1665-4749-a187-5ca4f53db1e3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.3452191} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f9fba550-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6129f885-2f33-4ecb-b1ec-326d123530d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6129f885-2f33-4ecb-b1ec-326d123530d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:29.130482709Z"}]},"request_id":"18b97106-62dc-4af4-8fd3-656b062891a9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.346653} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f9fbf370-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f9fba550-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/0467c06b-5932-4117-ac8b-3eada252c76a? 200 21ms","method":"GET","requestID":"f9fba550-50eb-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/devices/0467c06b-5932-4117-ac8b-3eada252c76a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f9fbf370-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/6129f885-2f33-4ecb-b1ec-326d123530d6? 200 20ms","method":"GET","requestID":"f9fbf370-50eb-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/6129f885-2f33-4ecb-b1ec-326d123530d6?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12"},"level":"info","message":"Setting up experiment","requestID":"93212bd2ad67b993a418f3f8ea8426e2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"93212bd2ad67b993a418f3f8ea8426e2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12"},"level":"info","message":"Successfully locked booking for experiment","requestID":"93212bd2ad67b993a418f3f8ea8426e2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"93212bd2ad67b993a418f3f8ea8426e2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"93212bd2ad67b993a418f3f8ea8426e2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12"},"level":"info","message":"Attempting to update booking for experiment","requestID":"93212bd2ad67b993a418f3f8ea8426e2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12"},"level":"info","message":"Successfully updated booking for experiment","requestID":"93212bd2ad67b993a418f3f8ea8426e2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12"},"level":"info","message":"Successfully set up experiment","requestID":"93212bd2ad67b993a418f3f8ea8426e2"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fa06c8e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fa073e10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fa078c30-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1168,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1168,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.666629,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12"},"level":"info","message":"Successfully running experiment","requestID":"93212bd2ad67b993a418f3f8ea8426e2"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1169,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fa06c8e0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615991,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"fa06c8e0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1169,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.28759,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"client_addr":"127.0.0.1:42288","level":"info","msg":"Received request.","req_id":1170,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fa073e10-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615991,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"fa073e10-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42288","level":"info","msg":"Sent response.","req_id":1170,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.387428,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0467c06b-5932-4117-ac8b-3eada252c76a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f72a0b4e-3dba-4328-b44a-bce4633f98f7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.419676} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fa078c30-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a","object_type":"device","rebac_allow":false,"scope_allow":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":"fa078c30-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0467c06b-5932-4117-ac8b-3eada252c76a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0467c06b-5932-4117-ac8b-3eada252c76a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:29.082723281Z"}]},"request_id":"2046c136-adae-4e11-afa1-7936b1687e5e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.4245062} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"fa06c8e0-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6129f885-2f33-4ecb-b1ec-326d123530d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6129f885-2f33-4ecb-b1ec-326d123530d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:29.130482709Z"}]},"request_id":"976867fd-709f-4fa6-9385-fae04bc74d7b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.4279027} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fa073e10-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fa078c30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/0467c06b-5932-4117-ac8b-3eada252c76a/signaling 200 19ms","method":"POST","requestID":"fa078c30-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/0467c06b-5932-4117-ac8b-3eada252c76a/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fa06c8e0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/0467c06b-5932-4117-ac8b-3eada252c76a? 200 29ms","method":"GET","requestID":"fa06c8e0-50eb-11ef-8434-2f6d198c7397","responseTime":29,"status":200,"url":"/devices/0467c06b-5932-4117-ac8b-3eada252c76a?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fa0b5cc0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fa073e10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/6129f885-2f33-4ecb-b1ec-326d123530d6? 200 30ms","method":"GET","requestID":"fa073e10-50eb-11ef-8434-2f6d198c7397","responseTime":30,"status":200,"url":"/devices/6129f885-2f33-4ecb-b1ec-326d123530d6?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1171,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fa0c6e30-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb3ffe5d1-eea2-40c0-960d-3d5423d18b12#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb3ffe5d1-eea2-40c0-960d-3d5423d18b12","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"539a4a88-4d60-4aa8-9de7-310f6fa72859","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.443976} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6129f885-2f33-4ecb-b1ec-326d123530d6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4de348fe-a2bc-405b-a595-368c77a8de46","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.4442828} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eb92fa5e-7fbd-45ab-902a-c54b6a21a740","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.4446876} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1171,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.529977,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fa0b5cc0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6","object_type":"device","rebac_allow":false,"scope_allow":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":"fa0b5cc0-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1172,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 31ms","method":"POST","requestID":"93212bd2ad67b993a418f3f8ea8426e2","responseTime":31,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0467c06b-5932-4117-ac8b-3eada252c76a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a376c00d-a893-4109-a82d-f5cebf02988a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.452739} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fa0b5cc0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1172,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.786021,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} device-1 | {"level":"info","message":"POST /devices/6129f885-2f33-4ecb-b1ec-326d123530d6/signaling 200 18ms","method":"POST","requestID":"fa0b5cc0-50eb-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/6129f885-2f33-4ecb-b1ec-326d123530d6/signaling"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fa0c6e30-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a","object_type":"device","rebac_allow":false,"scope_allow":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":"fa0c6e30-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fa0c6e30-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/0467c06b-5932-4117-ac8b-3eada252c76a/signaling 200 17ms","method":"POST","requestID":"fa0c6e30-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/0467c06b-5932-4117-ac8b-3eada252c76a/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"93212bd2ad67b993a418f3f8ea8426e2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fa0f7b70-50eb-11ef-8434-2f6d198c7397"} gateway-1 | {"time_local":"02/Aug/2024:16:26:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1212","request_time":"0.179","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"93212bd2ad67b993a418f3f8ea8426e2"} experiment-1 | {"level":"info","message":"POST /experiments? 201 173ms","method":"POST","requestID":"93212bd2ad67b993a418f3f8ea8426e2","responseTime":173,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1173,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4","level":"info","message":"auth send jwt","requestID":"4008415dcafd8276fdb3e1528e7a4384"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6129f885-2f33-4ecb-b1ec-326d123530d6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d49004c6-304d-4cff-9a8c-60373666f5da","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.4712982} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4008415dcafd8276fdb3e1528e7a4384","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1173,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.885969,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4008415dcafd8276fdb3e1528e7a4384"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fa0f7b70-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6","object_type":"device","rebac_allow":false,"scope_allow":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":"fa0f7b70-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1174,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1174,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.274783,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fa0f7b70-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"4008415dcafd8276fdb3e1528e7a4384","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615991,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4"} device-1 | {"level":"info","message":"POST /devices/6129f885-2f33-4ecb-b1ec-326d123530d6/signaling 200 17ms","method":"POST","requestID":"fa0f7b70-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/6129f885-2f33-4ecb-b1ec-326d123530d6/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4008415dcafd8276fdb3e1528e7a4384","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"93212bd2ad67b993a418f3f8ea8426e2"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fa1288b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fa12afc0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0467c06b-5932-4117-ac8b-3eada252c76a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0467c06b-5932-4117-ac8b-3eada252c76a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:29.082723281Z"}]},"request_id":"552dcad3-6b3d-453b-80e0-fe5426eeee40","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.4851007} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4008415dcafd8276fdb3e1528e7a4384","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1175,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1175,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.998276,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fa1288b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615991,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fa1288b0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4008415dcafd8276fdb3e1528e7a4384"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1176,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1176,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.718289,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} gateway-1 | {"time_local":"02/Aug/2024:16:26:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0467c06b-5932-4117-ac8b-3eada252c76a? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4008415dcafd8276fdb3e1528e7a4384"} device-1 | {"level":"info","message":"GET /devices/0467c06b-5932-4117-ac8b-3eada252c76a? 200 17ms","method":"GET","requestID":"4008415dcafd8276fdb3e1528e7a4384","responseTime":17,"status":200,"url":"/devices/0467c06b-5932-4117-ac8b-3eada252c76a?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fa12afc0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615991,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fa12afc0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4","level":"info","message":"auth send jwt","requestID":"76b58bac836babc67a31b2ebe69588a3"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0467c06b-5932-4117-ac8b-3eada252c76a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0467c06b-5932-4117-ac8b-3eada252c76a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:29.082723281Z"}]},"request_id":"8b00c96d-cfef-48d8-85a6-c22aac5b53fe","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.494169} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"76b58bac836babc67a31b2ebe69588a3","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fa1288b0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"76b58bac836babc67a31b2ebe69588a3"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6129f885-2f33-4ecb-b1ec-326d123530d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6129f885-2f33-4ecb-b1ec-326d123530d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:29.130482709Z"}]},"request_id":"cd3bc874-8bc0-477d-b7ea-4211fb2c3eb3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.4951324} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fa12afc0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1177,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1177,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.910957,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"76b58bac836babc67a31b2ebe69588a3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615991,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fa1288b0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"76b58bac836babc67a31b2ebe69588a3","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/0467c06b-5932-4117-ac8b-3eada252c76a? 200 18ms","method":"GET","requestID":"fa1288b0-50eb-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/0467c06b-5932-4117-ac8b-3eada252c76a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fa12afc0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/6129f885-2f33-4ecb-b1ec-326d123530d6? 200 18ms","method":"GET","requestID":"fa12afc0-50eb-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/6129f885-2f33-4ecb-b1ec-326d123530d6?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12"},"level":"info","message":"Building connection plan","requestID":"93212bd2ad67b993a418f3f8ea8426e2"} 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":"47f93514-ef83-4958-93a3-9f7d6bf39709"},{"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":"b6048b61-5a99-4c91-8612-b1a11c76dd5e"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"7b538376-d010-461b-a690-fcd907caa0ad"}]},"level":"info","message":"Built pairwise service configurations","requestID":"93212bd2ad67b993a418f3f8ea8426e2"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"93212bd2ad67b993a418f3f8ea8426e2"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"fa15e410-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6129f885-2f33-4ecb-b1ec-326d123530d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6129f885-2f33-4ecb-b1ec-326d123530d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:29.130482709Z"}]},"request_id":"2d13f588-34d2-4cfd-b0a8-6496d4e47eb6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.5067277} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"76b58bac836babc67a31b2ebe69588a3","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1178,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1178,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.876844,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fa15e410-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615991,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fa15e410-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"76b58bac836babc67a31b2ebe69588a3"} gateway-1 | {"time_local":"02/Aug/2024:16:26:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6129f885-2f33-4ecb-b1ec-326d123530d6? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"76b58bac836babc67a31b2ebe69588a3"} device-1 | {"level":"info","message":"GET /devices/6129f885-2f33-4ecb-b1ec-326d123530d6? 200 17ms","method":"GET","requestID":"76b58bac836babc67a31b2ebe69588a3","responseTime":17,"status":200,"url":"/devices/6129f885-2f33-4ecb-b1ec-326d123530d6?"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"79f04025-5898-48bf-b8ef-275093b621d1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.5202937} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bdd92847-3cb1-418e-99bf-54d4b9610217","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.520647} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"fa15e410-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"fa15e410-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"fa15e410-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/36ff87d6-684c-4272-b0e3-848f92fe9034'","requestID":"fa15e410-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/36ff87d6-684c-4272-b0e3-848f92fe9034'","requestID":"fa15e410-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"fa15e410-50eb-11ef-8434-2f6d198c7397"} 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":"fa15e410-50eb-11ef-8434-2f6d198c7397","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":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"fa15e410-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"93212bd2ad67b993a418f3f8ea8426e2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fa1e6f90-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1179,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0467c06b-5932-4117-ac8b-3eada252c76a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"284821cb-5e14-40df-937a-1a08f8c44ee5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.5658135} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1179,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.445701,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fa1e6f90-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a","object_type":"device","rebac_allow":false,"scope_allow":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":"fa1e6f90-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fa1e6f90-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/0467c06b-5932-4117-ac8b-3eada252c76a/signaling 200 9ms","method":"POST","requestID":"fa1e6f90-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/0467c06b-5932-4117-ac8b-3eada252c76a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fa201d40-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1180,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6129f885-2f33-4ecb-b1ec-326d123530d6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fc317d1d-107a-48d1-ac84-d278e4eaee60","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.5763886} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1180,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.554233,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fa201d40-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6","object_type":"device","rebac_allow":false,"scope_allow":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":"fa201d40-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"6129f885-2f33-4ecb-b1ec-326d123530d6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"6129f885-2f33-4ecb-b1ec-326d123530d6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fa201d40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/6129f885-2f33-4ecb-b1ec-326d123530d6/signaling 200 10ms","method":"POST","requestID":"fa201d40-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/6129f885-2f33-4ecb-b1ec-326d123530d6/signaling"} device-1 | {"device":"0467c06b-5932-4117-ac8b-3eada252c76a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"0467c06b-5932-4117-ac8b-3eada252c76a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 7113064089625887305 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:qGtt\r\na=ice-pwd:eXPOWyxE/5OTzz7QsMFSJA+7\r\na=ice-options:trickle\r\na=fingerprint:sha-256 A7:99:E1:0C:05:A2:AC:68:99:D1:C2:CD:4E:3F:B9:59:B7:35:4D:B4:77:06:56:97:FA:FB:22:71:2B:08:B8:63\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"0467c06b-5932-4117-ac8b-3eada252c76a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 7061503125979380935 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:NxEr\r\na=ice-pwd:sE4PK2t1LLxOSIXBUkS3GXa6\r\na=ice-options:trickle\r\na=fingerprint:sha-256 30:01:DF:46:67:BD:37:DF:98:72:DC:72:91:4A:B7:D8:70:63:F5:2D:22:F1:8C:94:DF:FC:D9:DD:38:CB:56:3E\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"6129f885-2f33-4ecb-b1ec-326d123530d6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3115168484 1 udp 2113937151 0c265bc5-9abc-4ff1-af64-e296e6e11eb9.local 55680 typ host generation 0 ufrag NxEr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6129f885-2f33-4ecb-b1ec-326d123530d6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3164978620 1 udp 1677729535 141.24.211.56 55680 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag NxEr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6129f885-2f33-4ecb-b1ec-326d123530d6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6'"} device-1 | {"content":{"candidate":"candidate:1398890666 1 udp 2113937151 c68e9189-b731-450f-b898-05523ac664d2.local 39141 typ host generation 0 ufrag qGtt network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0467c06b-5932-4117-ac8b-3eada252c76a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1449750514 1 udp 1677729535 141.24.211.56 39141 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag qGtt network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0467c06b-5932-4117-ac8b-3eada252c76a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a'"} device-1 | {"device":"0467c06b-5932-4117-ac8b-3eada252c76a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"6129f885-2f33-4ecb-b1ec-326d123530d6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/36ff87d6-684c-4272-b0e3-848f92fe9034' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"36ff87d6-684c-4272-b0e3-848f92fe9034","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"6129f885-2f33-4ecb-b1ec-326d123530d6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"0467c06b-5932-4117-ac8b-3eada252c76a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4c07693a69010b5b16002c594137f690","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":"4c07693a69010b5b16002c594137f690","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/36ff87d6-684c-4272-b0e3-848f92fe9034"}}},"level":"info","message":"received a callback","requestID":"4c07693a69010b5b16002c594137f690"} device-1 | {"device":"0467c06b-5932-4117-ac8b-3eada252c76a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} gateway-1 | {"time_local":"02/Aug/2024:16:26: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.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"4c07693a69010b5b16002c594137f690"} device-1 | {"device":"6129f885-2f33-4ecb-b1ec-326d123530d6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"4c07693a69010b5b16002c594137f690","responseTime":5,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"6129f885-2f33-4ecb-b1ec-326d123530d6","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"36ff87d6-684c-4272-b0e3-848f92fe9034","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"36ff87d6-684c-4272-b0e3-848f92fe9034","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/36ff87d6-684c-4272-b0e3-848f92fe9034' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"36ff87d6-684c-4272-b0e3-848f92fe9034","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f38688c4eebe7b3d4845ed8bddaf5744","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":"f38688c4eebe7b3d4845ed8bddaf5744","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/36ff87d6-684c-4272-b0e3-848f92fe9034"}}},"level":"info","message":"received a callback","requestID":"f38688c4eebe7b3d4845ed8bddaf5744"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"fa2c5240-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1181,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F36ff87d6-684c-4272-b0e3-848f92fe9034","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5fd62b5f-2c38-485b-86cb-fb92eb8add7a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.6565444} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1181,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.014105,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/36ff87d6-684c-4272-b0e3-848f92fe9034","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fa2c5240-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/36ff87d6-684c-4272-b0e3-848f92fe9034","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":"fa2c5240-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"fa2c5240-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/36ff87d6-684c-4272-b0e3-848f92fe9034 200 7ms","method":"GET","requestID":"fa2c5240-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/peerconnections/36ff87d6-684c-4272-b0e3-848f92fe9034"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 33ms","method":"POST","requestID":"f38688c4eebe7b3d4845ed8bddaf5744","responseTime":33,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26: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.036","http_referrer":"","http_user_agent":"node-fetch","requestID":"f38688c4eebe7b3d4845ed8bddaf5744"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fa30bf10-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1182,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6129f885-2f33-4ecb-b1ec-326d123530d6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"757c69af-6f37-4261-b9b2-1a2d7bef9c82","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.685176} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1182,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.489715,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fa30bf10-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6","object_type":"device","rebac_allow":false,"scope_allow":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":"fa30bf10-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fa30bf10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/6129f885-2f33-4ecb-b1ec-326d123530d6/signaling 200 7ms","method":"POST","requestID":"fa30bf10-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/devices/6129f885-2f33-4ecb-b1ec-326d123530d6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fa321ea0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1183,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0467c06b-5932-4117-ac8b-3eada252c76a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a2f19b86-fb82-4442-89ad-72ce89f43085","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.6942594} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1183,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.075463,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fa321ea0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a","object_type":"device","rebac_allow":false,"scope_allow":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":"fa321ea0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fa321ea0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/0467c06b-5932-4117-ac8b-3eada252c76a/signaling 200 7ms","method":"POST","requestID":"fa321ea0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/devices/0467c06b-5932-4117-ac8b-3eada252c76a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4","level":"info","message":"auth send jwt","requestID":"d7d155ca4e418a6f81bf6ea7e3c15626"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d7d155ca4e418a6f81bf6ea7e3c15626","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12","requestID":"d7d155ca4e418a6f81bf6ea7e3c15626"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1184,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1184,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.910537,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d7d155ca4e418a6f81bf6ea7e3c15626","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615991,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"d7d155ca4e418a6f81bf6ea7e3c15626","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12","requestID":"d7d155ca4e418a6f81bf6ea7e3c15626"} experiment-1 | {"level":"info","message":"GET /experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12 200 9ms","method":"GET","requestID":"d7d155ca4e418a6f81bf6ea7e3c15626","responseTime":9,"status":200,"url":"/experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12"} gateway-1 | {"time_local":"02/Aug/2024:16:26:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12 HTTP/1.1","status": "200","body_bytes_sent":"1285","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d7d155ca4e418a6f81bf6ea7e3c15626"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4","level":"info","message":"auth send jwt","requestID":"0c460a710b389f4e2f8ec7eed1fa146c"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0c460a710b389f4e2f8ec7eed1fa146c","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12","requestID":"0c460a710b389f4e2f8ec7eed1fa146c"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1185,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1185,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.713013,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0c460a710b389f4e2f8ec7eed1fa146c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615991,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"0c460a710b389f4e2f8ec7eed1fa146c","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12"},"level":"info","message":"Attempting to finish experiment","requestID":"0c460a710b389f4e2f8ec7eed1fa146c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"fa3c57d0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1186,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1186,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.916757,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/36ff87d6-684c-4272-b0e3-848f92fe9034","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fa3c57d0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/36ff87d6-684c-4272-b0e3-848f92fe9034","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615991,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"fa3c57d0-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/36ff87d6-684c-4272-b0e3-848f92fe9034","device":"6129f885-2f33-4ecb-b1ec-326d123530d6","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/36ff87d6-684c-4272-b0e3-848f92fe9034","device":"0467c06b-5932-4117-ac8b-3eada252c76a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/36ff87d6-684c-4272-b0e3-848f92fe9034' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/36ff87d6-684c-4272-b0e3-848f92fe9034' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"36ff87d6-684c-4272-b0e3-848f92fe9034","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"69c2601765a4ca9596d1c75fed382fb9","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":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F36ff87d6-684c-4272-b0e3-848f92fe9034': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F36ff87d6-684c-4272-b0e3-848f92fe9034","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"154e5e03-aab8-4257-8ee8-8151d4e9e2d9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.7789643} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"69c2601765a4ca9596d1c75fed382fb9","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/36ff87d6-684c-4272-b0e3-848f92fe9034"}}},"level":"info","message":"received a callback","requestID":"69c2601765a4ca9596d1c75fed382fb9"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4ace35472ac8e4497b0f580e3a14cd17","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":"4ace35472ac8e4497b0f580e3a14cd17","responseTime":1,"status":200,"url":"/auth"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/36ff87d6-684c-4272-b0e3-848f92fe9034"}}},"level":"info","message":"received a callback","requestID":"4ace35472ac8e4497b0f580e3a14cd17"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"599ffa08-f6c7-4e9c-b708-7a6eee89b314","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.7801425} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"fa3c57d0-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"36ff87d6-684c-4272-b0e3-848f92fe9034","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"fa3c57d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/36ff87d6-684c-4272-b0e3-848f92fe9034 204 41ms","method":"DELETE","requestID":"fa3c57d0-50eb-11ef-8434-2f6d198c7397","responseTime":41,"status":204,"url":"/peerconnections/36ff87d6-684c-4272-b0e3-848f92fe9034"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12"},"level":"info","message":"Successfully finished experiment","requestID":"0c460a710b389f4e2f8ec7eed1fa146c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fa450a60-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1187,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6129f885-2f33-4ecb-b1ec-326d123530d6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f5b521f6-d959-4ffe-8f5a-6c19ddc4e8a5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.8196704} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1187,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.942406,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fa450a60-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6129f885-2f33-4ecb-b1ec-326d123530d6","object_type":"device","rebac_allow":false,"scope_allow":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":"fa450a60-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fa450a60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/6129f885-2f33-4ecb-b1ec-326d123530d6/signaling 200 9ms","method":"POST","requestID":"fa450a60-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/6129f885-2f33-4ecb-b1ec-326d123530d6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fa46df20-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb3ffe5d1-eea2-40c0-960d-3d5423d18b12': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb3ffe5d1-eea2-40c0-960d-3d5423d18b12","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"84765964-400a-441f-b32b-4624b1a36a28","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.8276298} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b2009b21-37a7-4772-8bdd-912382cb4646","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.8279452} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1188,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"0c460a710b389f4e2f8ec7eed1fa146c","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0467c06b-5932-4117-ac8b-3eada252c76a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c167dcd2-d2b6-4ed4-af4d-6ab2c30fa634","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.8307743} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1188,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.786013,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fa46df20-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a","object_type":"device","rebac_allow":false,"scope_allow":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":"fa46df20-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fa46df20-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/0467c06b-5932-4117-ac8b-3eada252c76a/signaling 200 8ms","method":"POST","requestID":"fa46df20-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/0467c06b-5932-4117-ac8b-3eada252c76a/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12","requestID":"0c460a710b389f4e2f8ec7eed1fa146c"} gateway-1 | {"time_local":"02/Aug/2024:16:26:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0c460a710b389f4e2f8ec7eed1fa146c"} experiment-1 | {"level":"info","message":"DELETE /experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12 204 145ms","method":"DELETE","requestID":"0c460a710b389f4e2f8ec7eed1fa146c","responseTime":145,"status":204,"url":"/experiments/b3ffe5d1-eea2-40c0-960d-3d5423d18b12"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"69c2601765a4ca9596d1c75fed382fb9","responseTime":114,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26: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.117","http_referrer":"","http_user_agent":"node-fetch","requestID":"69c2601765a4ca9596d1c75fed382fb9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 112ms","method":"POST","requestID":"4ace35472ac8e4497b0f580e3a14cd17","responseTime":112,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26: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.118","http_referrer":"","http_user_agent":"node-fetch","requestID":"4ace35472ac8e4497b0f580e3a14cd17"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4","level":"info","message":"auth send jwt","requestID":"73458ba1c362b898a7b3e13eb921a66f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"73458ba1c362b898a7b3e13eb921a66f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"73458ba1c362b898a7b3e13eb921a66f"} gateway-1 | {"time_local":"02/Aug/2024:16:26:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3280","request_time":"0.733","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":"7e8a1c24f41a6d48740e6622c833a494"} gateway-1 | {"time_local":"02/Aug/2024:16:26:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3282","request_time":"0.755","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":"905090989e048c94c27c371f04c0b584"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1189,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1189,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.034286,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"73458ba1c362b898a7b3e13eb921a66f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615991,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"73458ba1c362b898a7b3e13eb921a66f","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/6129f885-2f33-4ecb-b1ec-326d123530d6' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/0467c06b-5932-4117-ac8b-3eada252c76a' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe757497b-b735-4c28-8b3f-f11988a0e75b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"830166f8-89c5-4a59-8de6-624429c4a10a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.920496} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"73458ba1c362b898a7b3e13eb921a66f","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c1e507f1-0f77-4e21-849d-d25404ea6b99","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.9244962} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"73458ba1c362b898a7b3e13eb921a66f","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe757497b-b735-4c28-8b3f-f11988a0e75b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"29336967-ffdf-41b4-a599-8155bfc5d507","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.9352908} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c3dcfcfb-774c-43b4-9e15-307e0b017494","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.935501} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"73458ba1c362b898a7b3e13eb921a66f","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe757497b-b735-4c28-8b3f-f11988a0e75b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe757497b-b735-4c28-8b3f-f11988a0e75b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:31.935258476Z"}]},"request_id":"f1dc656b-375b-4cfd-8080-39c041d730fa","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.9400682} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"73458ba1c362b898a7b3e13eb921a66f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"73458ba1c362b898a7b3e13eb921a66f"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"73458ba1c362b898a7b3e13eb921a66f","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"73458ba1c362b898a7b3e13eb921a66f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4","level":"info","message":"auth send jwt","requestID":"2f1732faca7c7a52257a9a6b764e9459"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2f1732faca7c7a52257a9a6b764e9459","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2f1732faca7c7a52257a9a6b764e9459"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1190,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1190,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.731435,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"2f1732faca7c7a52257a9a6b764e9459","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615991,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5MX0.V_vR5E2HqsO2aOA4hAwspvfT2kZSHRnL2m70wXUN3I4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2f1732faca7c7a52257a9a6b764e9459","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F441208b2-7e0d-43ad-a0f9-564ef21c9bfb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a18a80e0-e9f4-46c6-a044-7da1850ebe66","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.9621086} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2f1732faca7c7a52257a9a6b764e9459","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c08cf466-6615-48fc-8c09-671308fab2c2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.96611} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"2f1732faca7c7a52257a9a6b764e9459","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F441208b2-7e0d-43ad-a0f9-564ef21c9bfb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"910f6e17-5a7e-400c-8a59-2f759319da3a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.9819202} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"257a4037-d748-445c-8640-a328fee9397d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.982081} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"2f1732faca7c7a52257a9a6b764e9459","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F441208b2-7e0d-43ad-a0f9-564ef21c9bfb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F441208b2-7e0d-43ad-a0f9-564ef21c9bfb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:31.981888318Z"}]},"request_id":"5066e925-4b61-4824-bfdb-eb03578990d6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615991.9858289} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2f1732faca7c7a52257a9a6b764e9459","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2f1732faca7c7a52257a9a6b764e9459"} gateway-1 | {"time_local":"02/Aug/2024:16:26:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2f1732faca7c7a52257a9a6b764e9459"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"2f1732faca7c7a52257a9a6b764e9459","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5Mn0.GEQxlUb_0Lxy5YSI01b0gaa7dWod-Ef5cBtXOtVF_vo","level":"info","message":"auth send jwt","requestID":"7fd7ebbeaaaf17b30dd1063f464254db"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7fd7ebbeaaaf17b30dd1063f464254db","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"7fd7ebbeaaaf17b30dd1063f464254db"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1191,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1191,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.94957,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"7fd7ebbeaaaf17b30dd1063f464254db","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615992,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5Mn0.GEQxlUb_0Lxy5YSI01b0gaa7dWod-Ef5cBtXOtVF_vo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7fd7ebbeaaaf17b30dd1063f464254db","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F441208b2-7e0d-43ad-a0f9-564ef21c9bfb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F441208b2-7e0d-43ad-a0f9-564ef21c9bfb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:31.981888318Z"}]},"request_id":"23ae19e7-3504-434a-ac06-80f994ec1693","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615992.5106058} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7fd7ebbeaaaf17b30dd1063f464254db","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4f06afd6-6e08-424b-b175-8b9d3f3ac6ec","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615992.5177298} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"7fd7ebbeaaaf17b30dd1063f464254db","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F441208b2-7e0d-43ad-a0f9-564ef21c9bfb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F441208b2-7e0d-43ad-a0f9-564ef21c9bfb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:31.981888318Z"}]},"request_id":"9e9b00db-6b25-4ada-ad26-1016ef664468","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615992.5653613} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7fd7ebbeaaaf17b30dd1063f464254db","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"7fd7ebbeaaaf17b30dd1063f464254db"} gateway-1 | {"time_local":"02/Aug/2024:16:26:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.078","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"7fd7ebbeaaaf17b30dd1063f464254db"} device-1 | {"level":"info","message":"PATCH /devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb 200 72ms","method":"PATCH","requestID":"7fd7ebbeaaaf17b30dd1063f464254db","responseTime":72,"status":200,"url":"/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5Mn0.GEQxlUb_0Lxy5YSI01b0gaa7dWod-Ef5cBtXOtVF_vo","level":"info","message":"auth send jwt","requestID":"a013b496323e1940c4ed94636e613ba2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a013b496323e1940c4ed94636e613ba2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a013b496323e1940c4ed94636e613ba2"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1192,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:32Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1192,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.313053,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a013b496323e1940c4ed94636e613ba2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615992,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5Mn0.GEQxlUb_0Lxy5YSI01b0gaa7dWod-Ef5cBtXOtVF_vo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a013b496323e1940c4ed94636e613ba2","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a013b496323e1940c4ed94636e613ba2"} device-1 | {"level":"info","message":"POST /devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb/websocket 200 19ms","method":"POST","requestID":"a013b496323e1940c4ed94636e613ba2","responseTime":19,"status":200,"url":"/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:26:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"a013b496323e1940c4ed94636e613ba2"} device-1 | {"level":"info","message":"device 'http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ed0c39c1ab358d3c62e82209f0899337","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":"ed0c39c1ab358d3c62e82209f0899337","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e757497b-b735-4c28-8b3f-f11988a0e75b/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":"ed0c39c1ab358d3c62e82209f0899337"} device-1 | {"level":"info","message":"OPTIONS /devices/e757497b-b735-4c28-8b3f-f11988a0e75b/websocket 200 1ms","method":"OPTIONS","requestID":"ed0c39c1ab358d3c62e82209f0899337","responseTime":1,"status":200,"url":"/devices/e757497b-b735-4c28-8b3f-f11988a0e75b/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5NH0.lImkpvR4j4F66PSMRyUHi3UymgO9tijxNpGVR_bhed4","level":"info","message":"auth send jwt","requestID":"e262dadcb5bc248661f3ffb6d238b077"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e262dadcb5bc248661f3ffb6d238b077","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e262dadcb5bc248661f3ffb6d238b077"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1193,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1193,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.196663,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e262dadcb5bc248661f3ffb6d238b077","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615994,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5NH0.lImkpvR4j4F66PSMRyUHi3UymgO9tijxNpGVR_bhed4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e262dadcb5bc248661f3ffb6d238b077","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e262dadcb5bc248661f3ffb6d238b077"} gateway-1 | {"time_local":"02/Aug/2024:16:26:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e757497b-b735-4c28-8b3f-f11988a0e75b/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":"e262dadcb5bc248661f3ffb6d238b077"} device-1 | {"level":"info","message":"POST /devices/e757497b-b735-4c28-8b3f-f11988a0e75b/websocket 200 21ms","method":"POST","requestID":"e262dadcb5bc248661f3ffb6d238b077","responseTime":21,"status":200,"url":"/devices/e757497b-b735-4c28-8b3f-f11988a0e75b/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fb8d55037a138477c77ef0ef2db585e0","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":"fb8d55037a138477c77ef0ef2db585e0","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e757497b-b735-4c28-8b3f-f11988a0e75b? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"fb8d55037a138477c77ef0ef2db585e0"} device-1 | {"level":"info","message":"OPTIONS /devices/e757497b-b735-4c28-8b3f-f11988a0e75b? 200 1ms","method":"OPTIONS","requestID":"fb8d55037a138477c77ef0ef2db585e0","responseTime":1,"status":200,"url":"/devices/e757497b-b735-4c28-8b3f-f11988a0e75b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5NH0.lImkpvR4j4F66PSMRyUHi3UymgO9tijxNpGVR_bhed4","level":"info","message":"auth send jwt","requestID":"ffe4408a73d6943c065fa0ef5776baf1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ffe4408a73d6943c065fa0ef5776baf1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ffe4408a73d6943c065fa0ef5776baf1"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1194,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1194,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.158875,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ffe4408a73d6943c065fa0ef5776baf1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615994,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5NH0.lImkpvR4j4F66PSMRyUHi3UymgO9tijxNpGVR_bhed4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ffe4408a73d6943c065fa0ef5776baf1","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe757497b-b735-4c28-8b3f-f11988a0e75b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe757497b-b735-4c28-8b3f-f11988a0e75b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:31.935258476Z"}]},"request_id":"1e0eec6e-d2ed-49c6-af23-edfbab8b6d18","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615994.10179} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ffe4408a73d6943c065fa0ef5776baf1","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5fd632de-63f4-4b3a-9eed-c1d1df9f32ad","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615994.1084921} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ffe4408a73d6943c065fa0ef5776baf1","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe757497b-b735-4c28-8b3f-f11988a0e75b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe757497b-b735-4c28-8b3f-f11988a0e75b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:31.935258476Z"}]},"request_id":"02c4e45b-070f-4a78-ae58-8d55f3a74186","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615994.1224697} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ffe4408a73d6943c065fa0ef5776baf1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ffe4408a73d6943c065fa0ef5776baf1"} gateway-1 | {"time_local":"02/Aug/2024:16:26:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e757497b-b735-4c28-8b3f-f11988a0e75b? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.043","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":"ffe4408a73d6943c065fa0ef5776baf1"} device-1 | {"level":"info","message":"PATCH /devices/e757497b-b735-4c28-8b3f-f11988a0e75b? 200 37ms","method":"PATCH","requestID":"ffe4408a73d6943c065fa0ef5776baf1","responseTime":37,"status":200,"url":"/devices/e757497b-b735-4c28-8b3f-f11988a0e75b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5NH0.lImkpvR4j4F66PSMRyUHi3UymgO9tijxNpGVR_bhed4","level":"info","message":"auth send jwt","requestID":"f38ae89205281a027e639b2c696255ae"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f38ae89205281a027e639b2c696255ae","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f38ae89205281a027e639b2c696255ae"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1195,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1195,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.387109,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f38ae89205281a027e639b2c696255ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615994,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5NH0.lImkpvR4j4F66PSMRyUHi3UymgO9tijxNpGVR_bhed4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f38ae89205281a027e639b2c696255ae","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe757497b-b735-4c28-8b3f-f11988a0e75b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe757497b-b735-4c28-8b3f-f11988a0e75b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:31.935258476Z"}]},"request_id":"97423db6-1533-4959-9759-e656da41c6fd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615994.1521368} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f38ae89205281a027e639b2c696255ae","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f38ae89205281a027e639b2c696255ae"} gateway-1 | {"time_local":"02/Aug/2024:16:26:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e757497b-b735-4c28-8b3f-f11988a0e75b? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f38ae89205281a027e639b2c696255ae"} device-1 | {"level":"info","message":"GET /devices/e757497b-b735-4c28-8b3f-f11988a0e75b? 200 19ms","method":"GET","requestID":"f38ae89205281a027e639b2c696255ae","responseTime":19,"status":200,"url":"/devices/e757497b-b735-4c28-8b3f-f11988a0e75b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5NH0.lImkpvR4j4F66PSMRyUHi3UymgO9tijxNpGVR_bhed4","level":"info","message":"auth send jwt","requestID":"edc7c33fb142a6c7a6fd5975f83e8638"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"edc7c33fb142a6c7a6fd5975f83e8638","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"edc7c33fb142a6c7a6fd5975f83e8638"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1196,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1196,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.238894,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"edc7c33fb142a6c7a6fd5975f83e8638","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615994,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5NH0.lImkpvR4j4F66PSMRyUHi3UymgO9tijxNpGVR_bhed4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"edc7c33fb142a6c7a6fd5975f83e8638","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F441208b2-7e0d-43ad-a0f9-564ef21c9bfb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F441208b2-7e0d-43ad-a0f9-564ef21c9bfb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:31.981888318Z"}]},"request_id":"445ad57e-def8-446c-833d-85ae2a2d3296","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615994.1794524} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"edc7c33fb142a6c7a6fd5975f83e8638","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"edc7c33fb142a6c7a6fd5975f83e8638"} device-1 | {"level":"info","message":"GET /devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb? 200 16ms","method":"GET","requestID":"edc7c33fb142a6c7a6fd5975f83e8638","responseTime":16,"status":200,"url":"/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"edc7c33fb142a6c7a6fd5975f83e8638"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5NH0.lImkpvR4j4F66PSMRyUHi3UymgO9tijxNpGVR_bhed4","level":"info","message":"auth send jwt","requestID":"8070c43596e99992949c56c5aa7683ae"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8070c43596e99992949c56c5aa7683ae","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"8070c43596e99992949c56c5aa7683ae"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1197,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1197,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.238461,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"8070c43596e99992949c56c5aa7683ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615994,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5NH0.lImkpvR4j4F66PSMRyUHi3UymgO9tijxNpGVR_bhed4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8070c43596e99992949c56c5aa7683ae","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63"},"level":"info","message":"Attempting to run experiment","requestID":"8070c43596e99992949c56c5aa7683ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63"},"level":"info","message":"Attempting to book experiment","requestID":"8070c43596e99992949c56c5aa7683ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63"},"level":"info","message":"Successfully booked experiment","requestID":"8070c43596e99992949c56c5aa7683ae"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fbb5ff80-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fbb62690-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1198,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1199,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1198,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.840268,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fbb5ff80-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615994,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5NH0.lImkpvR4j4F66PSMRyUHi3UymgO9tijxNpGVR_bhed4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fbb5ff80-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1199,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.774772,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fbb62690-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615994,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5NH0.lImkpvR4j4F66PSMRyUHi3UymgO9tijxNpGVR_bhed4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fbb62690-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe757497b-b735-4c28-8b3f-f11988a0e75b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe757497b-b735-4c28-8b3f-f11988a0e75b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:31.935258476Z"}]},"request_id":"2c2b7198-d379-4898-adcb-a8d2e11ce4c2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615994.2403462} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fbb5ff80-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F441208b2-7e0d-43ad-a0f9-564ef21c9bfb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F441208b2-7e0d-43ad-a0f9-564ef21c9bfb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:31.981888318Z"}]},"request_id":"85ac3da9-7caa-43e9-9eaf-eac8e0cd0684","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615994.2412333} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fbb62690-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fbb5ff80-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/e757497b-b735-4c28-8b3f-f11988a0e75b? 200 16ms","method":"GET","requestID":"fbb5ff80-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/e757497b-b735-4c28-8b3f-f11988a0e75b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fbb62690-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb? 200 17ms","method":"GET","requestID":"fbb62690-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63"},"level":"info","message":"Setting up experiment","requestID":"8070c43596e99992949c56c5aa7683ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"8070c43596e99992949c56c5aa7683ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63"},"level":"info","message":"Successfully locked booking for experiment","requestID":"8070c43596e99992949c56c5aa7683ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"8070c43596e99992949c56c5aa7683ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"8070c43596e99992949c56c5aa7683ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63"},"level":"info","message":"Attempting to update booking for experiment","requestID":"8070c43596e99992949c56c5aa7683ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63"},"level":"info","message":"Successfully updated booking for experiment","requestID":"8070c43596e99992949c56c5aa7683ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63"},"level":"info","message":"Successfully set up experiment","requestID":"8070c43596e99992949c56c5aa7683ae"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fbc086d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fbc0d4f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fbc12310-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1200,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1200,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.715444,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:34Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63"},"level":"info","message":"Successfully running experiment","requestID":"8070c43596e99992949c56c5aa7683ae"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fbc086d0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615994,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5NH0.lImkpvR4j4F66PSMRyUHi3UymgO9tijxNpGVR_bhed4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fbc086d0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1201,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1201,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.713347,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fbc0d4f0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615994,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5NH0.lImkpvR4j4F66PSMRyUHi3UymgO9tijxNpGVR_bhed4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fbc0d4f0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1202,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1202,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.336402,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe757497b-b735-4c28-8b3f-f11988a0e75b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a2127c20-ceac-4416-ac3e-835847df1906","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615994.3099759} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe757497b-b735-4c28-8b3f-f11988a0e75b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe757497b-b735-4c28-8b3f-f11988a0e75b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:31.935258476Z"}]},"request_id":"ff59da73-f8ea-4b9f-b2c0-c8d4c2b33795","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615994.3102748} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"fbc086d0-50eb-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fbc12310-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b","object_type":"device","rebac_allow":false,"scope_allow":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":"fbc12310-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F441208b2-7e0d-43ad-a0f9-564ef21c9bfb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F441208b2-7e0d-43ad-a0f9-564ef21c9bfb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:31.981888318Z"}]},"request_id":"dc83226b-60d5-45da-8c16-8e182b93d1a4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615994.3110492} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fbc0d4f0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fbc086d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/e757497b-b735-4c28-8b3f-f11988a0e75b? 200 19ms","method":"GET","requestID":"fbc086d0-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/e757497b-b735-4c28-8b3f-f11988a0e75b?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fbc12310-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/e757497b-b735-4c28-8b3f-f11988a0e75b/signaling 200 16ms","method":"POST","requestID":"fbc12310-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/e757497b-b735-4c28-8b3f-f11988a0e75b/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fbc0d4f0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb? 200 19ms","method":"GET","requestID":"fbc0d4f0-50eb-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fbc40940-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fbc45760-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2a38d47d-6352-4896-8fcc-cf689dbc1b63#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2a38d47d-6352-4896-8fcc-cf689dbc1b63","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"601b6b70-8bc9-4a2d-8ad6-c719de04f357","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615994.3268132} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4b2439a0-17a7-4710-b8ce-5173e517e997","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615994.3273113} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1203,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1204,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"8070c43596e99992949c56c5aa7683ae","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1203,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.985397,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F441208b2-7e0d-43ad-a0f9-564ef21c9bfb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f752d5e4-962e-4ec4-9712-7e6c846e1101","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615994.3305864} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fbc40940-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb","object_type":"device","rebac_allow":false,"scope_allow":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":"fbc40940-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe757497b-b735-4c28-8b3f-f11988a0e75b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d0a31e81-2b0a-4ad6-b7f4-0827889c010b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615994.335438} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1204,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.902977,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fbc45760-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b","object_type":"device","rebac_allow":false,"scope_allow":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":"fbc45760-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fbc40940-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb/signaling 200 14ms","method":"POST","requestID":"fbc40940-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"8070c43596e99992949c56c5aa7683ae"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fbc45760-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/e757497b-b735-4c28-8b3f-f11988a0e75b/signaling 200 15ms","method":"POST","requestID":"fbc45760-50eb-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/e757497b-b735-4c28-8b3f-f11988a0e75b/signaling"} gateway-1 | {"time_local":"02/Aug/2024:16:26:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.156","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8070c43596e99992949c56c5aa7683ae"} experiment-1 | {"level":"info","message":"POST /experiments? 201 150ms","method":"POST","requestID":"8070c43596e99992949c56c5aa7683ae","responseTime":150,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fbc73d90-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5NH0.lImkpvR4j4F66PSMRyUHi3UymgO9tijxNpGVR_bhed4","level":"info","message":"auth send jwt","requestID":"e465152fd341a1005a9652908376c1e9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e465152fd341a1005a9652908376c1e9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e465152fd341a1005a9652908376c1e9"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1205,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1206,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F441208b2-7e0d-43ad-a0f9-564ef21c9bfb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ee5c4844-246b-4a1f-a13b-e3b95127cac5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615994.3511488} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1206,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.219673,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e465152fd341a1005a9652908376c1e9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615994,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5NH0.lImkpvR4j4F66PSMRyUHi3UymgO9tijxNpGVR_bhed4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e465152fd341a1005a9652908376c1e9","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1205,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.607697,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fbc73d90-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb","object_type":"device","rebac_allow":false,"scope_allow":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":"fbc73d90-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe757497b-b735-4c28-8b3f-f11988a0e75b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe757497b-b735-4c28-8b3f-f11988a0e75b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:31.935258476Z"}]},"request_id":"70119fea-e685-4cf6-b383-2d7252701ad7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615994.356901} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fbc73d90-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e465152fd341a1005a9652908376c1e9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb/signaling 200 13ms","method":"POST","requestID":"fbc73d90-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"8070c43596e99992949c56c5aa7683ae"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fbc98780-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fbc9ae90-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e465152fd341a1005a9652908376c1e9"} gateway-1 | {"time_local":"02/Aug/2024:16:26:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e757497b-b735-4c28-8b3f-f11988a0e75b? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e465152fd341a1005a9652908376c1e9"} device-1 | {"level":"info","message":"GET /devices/e757497b-b735-4c28-8b3f-f11988a0e75b? 200 15ms","method":"GET","requestID":"e465152fd341a1005a9652908376c1e9","responseTime":15,"status":200,"url":"/devices/e757497b-b735-4c28-8b3f-f11988a0e75b?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1207,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Received request.","req_id":1208,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1207,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.262001,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fbc98780-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615994,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5NH0.lImkpvR4j4F66PSMRyUHi3UymgO9tijxNpGVR_bhed4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fbc98780-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34348","level":"info","msg":"Sent response.","req_id":1208,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.20459,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fbc9ae90-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615994,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5NH0.lImkpvR4j4F66PSMRyUHi3UymgO9tijxNpGVR_bhed4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fbc9ae90-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5NH0.lImkpvR4j4F66PSMRyUHi3UymgO9tijxNpGVR_bhed4","level":"info","message":"auth send jwt","requestID":"fbc015bd20a8edf23a0fdb2e689f00ed"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"fbc015bd20a8edf23a0fdb2e689f00ed","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fbc015bd20a8edf23a0fdb2e689f00ed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe757497b-b735-4c28-8b3f-f11988a0e75b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe757497b-b735-4c28-8b3f-f11988a0e75b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:31.935258476Z"}]},"request_id":"447c58f5-fad6-4c13-9620-db86425957d8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615994.3693347} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fbc98780-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F441208b2-7e0d-43ad-a0f9-564ef21c9bfb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F441208b2-7e0d-43ad-a0f9-564ef21c9bfb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:31.981888318Z"}]},"request_id":"b6cdce5b-1b1c-4a6a-9a5d-5be7d2a8bf19","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615994.3707495} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fbc98780-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"fbc9ae90-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1209,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1209,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.9911,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:34Z"} device-1 | {"level":"info","message":"GET /devices/e757497b-b735-4c28-8b3f-f11988a0e75b? 200 13ms","method":"GET","requestID":"fbc98780-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/e757497b-b735-4c28-8b3f-f11988a0e75b?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fbc015bd20a8edf23a0fdb2e689f00ed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615994,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5NH0.lImkpvR4j4F66PSMRyUHi3UymgO9tijxNpGVR_bhed4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fbc015bd20a8edf23a0fdb2e689f00ed","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fbc9ae90-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb? 200 16ms","method":"GET","requestID":"fbc9ae90-50eb-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F441208b2-7e0d-43ad-a0f9-564ef21c9bfb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F441208b2-7e0d-43ad-a0f9-564ef21c9bfb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:31.981888318Z"}]},"request_id":"957a4189-7bf5-4109-9d7b-b078796c5fa9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615994.37839} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63"},"level":"info","message":"Building connection plan","requestID":"8070c43596e99992949c56c5aa7683ae"} 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":"a7d6790d-3881-4616-bcb1-32e2e5961e1d"},{"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":"f9e73553-c33a-4943-b4c8-5a8afc934bbe"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"6281da6f-8f7a-4200-a447-9493e43f391a"}]},"level":"info","message":"Built pairwise service configurations","requestID":"8070c43596e99992949c56c5aa7683ae"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"8070c43596e99992949c56c5aa7683ae"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fbc015bd20a8edf23a0fdb2e689f00ed","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"fbccbbd0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fbc015bd20a8edf23a0fdb2e689f00ed"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1210,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:34Z"} device-1 | {"level":"info","message":"GET /devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb? 200 16ms","method":"GET","requestID":"fbc015bd20a8edf23a0fdb2e689f00ed","responseTime":16,"status":200,"url":"/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1210,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.794004,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:34Z"} gateway-1 | {"time_local":"02/Aug/2024:16:26:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fbc015bd20a8edf23a0fdb2e689f00ed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fbccbbd0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615994,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5NH0.lImkpvR4j4F66PSMRyUHi3UymgO9tijxNpGVR_bhed4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fbccbbd0-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"c1f339b2-c32c-4c40-816e-b7c04baccb9f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615994.392228} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e8817034-1c58-4601-a4d6-1f10d07e6a68","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615994.3925126} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"fbccbbd0-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"fbccbbd0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"fbccbbd0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/6ee4433f-df22-49fc-9a15-13564e528d3f'","requestID":"fbccbbd0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/6ee4433f-df22-49fc-9a15-13564e528d3f'","requestID":"fbccbbd0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"fbccbbd0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"fbccbbd0-50eb-11ef-8434-2f6d198c7397","responseTime":23,"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":"fbccbbd0-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"8070c43596e99992949c56c5aa7683ae"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fbd4ab10-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1211,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe757497b-b735-4c28-8b3f-f11988a0e75b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8d78f65b-eff7-465a-b599-5ce0199ce3ab","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615994.4375231} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1211,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.066802,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fbd4ab10-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b","object_type":"device","rebac_allow":false,"scope_allow":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":"fbd4ab10-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fbd4ab10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/e757497b-b735-4c28-8b3f-f11988a0e75b/signaling 200 8ms","method":"POST","requestID":"fbd4ab10-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/e757497b-b735-4c28-8b3f-f11988a0e75b/signaling"} device-1 | {"device":"e757497b-b735-4c28-8b3f-f11988a0e75b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"e757497b-b735-4c28-8b3f-f11988a0e75b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fbd631b0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1212,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F441208b2-7e0d-43ad-a0f9-564ef21c9bfb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d0f53db6-7846-478f-b6b5-90358441a137","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615994.4483202} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1212,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.497901,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fbd631b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb","object_type":"device","rebac_allow":false,"scope_allow":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":"fbd631b0-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fbd631b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb/signaling 200 8ms","method":"POST","requestID":"fbd631b0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb/signaling"} device-1 | {"device":"441208b2-7e0d-43ad-a0f9-564ef21c9bfb","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"6ee4433f-df22-49fc-9a15-13564e528d3f","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 6601647100896729374 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=msid-semantic: WMS\r\nm=application 9 DTLS/SCTP 5000\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:p2Ay\r\na=ice-pwd:11agXBsSXUF0M+quqbUGiV7t\r\na=ice-options:trickle\r\na=fingerprint:sha-256 E4:75:EC:04:36:B3:9A:54:71:28:EE:0D:49:02:4A:2D:73:1B:FD:4A:91:73:E6:77:87:5F:4A:81:E5:E3:40:09\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"e757497b-b735-4c28-8b3f-f11988a0e75b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1354279781 1 udp 2113937151 96e05046-8203-4604-bc9b-53d74a9c6320.local 50949 typ host generation 0 ufrag p2Ay network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e757497b-b735-4c28-8b3f-f11988a0e75b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"e757497b-b735-4c28-8b3f-f11988a0e75b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:1491132578 1 udp 1677729535 141.24.211.56 50949 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag p2Ay network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e757497b-b735-4c28-8b3f-f11988a0e75b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/6ee4433f-df22-49fc-9a15-13564e528d3f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6ee4433f-df22-49fc-9a15-13564e528d3f","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e757497b-b735-4c28-8b3f-f11988a0e75b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ed51739c80aeb3e5c87741e2267ebf43","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)"} device-1 | {"device":"441208b2-7e0d-43ad-a0f9-564ef21c9bfb","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"441208b2-7e0d-43ad-a0f9-564ef21c9bfb","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"441208b2-7e0d-43ad-a0f9-564ef21c9bfb","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ed51739c80aeb3e5c87741e2267ebf43","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/6ee4433f-df22-49fc-9a15-13564e528d3f"}}},"level":"info","message":"received a callback","requestID":"ed51739c80aeb3e5c87741e2267ebf43"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"ed51739c80aeb3e5c87741e2267ebf43","responseTime":4,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:36 +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":"ed51739c80aeb3e5c87741e2267ebf43"} device-1 | {"data":{"peerconnection":"6ee4433f-df22-49fc-9a15-13564e528d3f","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"441208b2-7e0d-43ad-a0f9-564ef21c9bfb","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"e757497b-b735-4c28-8b3f-f11988a0e75b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"441208b2-7e0d-43ad-a0f9-564ef21c9bfb","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"6ee4433f-df22-49fc-9a15-13564e528d3f","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e757497b-b735-4c28-8b3f-f11988a0e75b","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/6ee4433f-df22-49fc-9a15-13564e528d3f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6ee4433f-df22-49fc-9a15-13564e528d3f","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b20946cc737a78d1ca67929055872246","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":"b20946cc737a78d1ca67929055872246","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/6ee4433f-df22-49fc-9a15-13564e528d3f"}}},"level":"info","message":"received a callback","requestID":"b20946cc737a78d1ca67929055872246"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"fd13e1d0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1213,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:36Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6ee4433f-df22-49fc-9a15-13564e528d3f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7b609518-c1b1-4471-8737-d35a34815abe","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615996.5316527} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1213,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.95358,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6ee4433f-df22-49fc-9a15-13564e528d3f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fd13e1d0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/6ee4433f-df22-49fc-9a15-13564e528d3f","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":"fd13e1d0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"fd13e1d0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/6ee4433f-df22-49fc-9a15-13564e528d3f 200 12ms","method":"GET","requestID":"fd13e1d0-50eb-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/peerconnections/6ee4433f-df22-49fc-9a15-13564e528d3f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 44ms","method":"POST","requestID":"b20946cc737a78d1ca67929055872246","responseTime":44,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:36 +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":"b20946cc737a78d1ca67929055872246"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fd19fc50-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1214,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:36Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe757497b-b735-4c28-8b3f-f11988a0e75b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cfab9f27-1466-492b-8368-d953497f3766","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615996.5717053} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1214,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.968688,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fd19fc50-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b","object_type":"device","rebac_allow":false,"scope_allow":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":"fd19fc50-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fd19fc50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/e757497b-b735-4c28-8b3f-f11988a0e75b/signaling 200 13ms","method":"POST","requestID":"fd19fc50-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/e757497b-b735-4c28-8b3f-f11988a0e75b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fd1c6d50-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1215,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:36Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F441208b2-7e0d-43ad-a0f9-564ef21c9bfb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9fa330b4-81db-4fdf-80a1-9e6dc6670ee0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615996.588945} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1215,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.062754,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fd1c6d50-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb","object_type":"device","rebac_allow":false,"scope_allow":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":"fd1c6d50-50eb-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fd1c6d50-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb/signaling 200 14ms","method":"POST","requestID":"fd1c6d50-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5Nn0.5aM2-XXj7RLXkRNfo_JB0RONn4X2q-sWhm7N22JkAg8","level":"info","message":"auth send jwt","requestID":"c01d3827aab80a4eb28c7a1dd298a1a0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c01d3827aab80a4eb28c7a1dd298a1a0","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63","requestID":"c01d3827aab80a4eb28c7a1dd298a1a0"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1216,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:36Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1216,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.181379,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c01d3827aab80a4eb28c7a1dd298a1a0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615996,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5Nn0.5aM2-XXj7RLXkRNfo_JB0RONn4X2q-sWhm7N22JkAg8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c01d3827aab80a4eb28c7a1dd298a1a0","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63","requestID":"c01d3827aab80a4eb28c7a1dd298a1a0"} gateway-1 | {"time_local":"02/Aug/2024:16:26:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63 HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c01d3827aab80a4eb28c7a1dd298a1a0"} experiment-1 | {"level":"info","message":"GET /experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63 200 18ms","method":"GET","requestID":"c01d3827aab80a4eb28c7a1dd298a1a0","responseTime":18,"status":200,"url":"/experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5Nn0.5aM2-XXj7RLXkRNfo_JB0RONn4X2q-sWhm7N22JkAg8","level":"info","message":"auth send jwt","requestID":"525d59847811253292974731c313b209"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"525d59847811253292974731c313b209","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63","requestID":"525d59847811253292974731c313b209"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1217,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:36Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1217,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.931517,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:36Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"525d59847811253292974731c313b209","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615996,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5Nn0.5aM2-XXj7RLXkRNfo_JB0RONn4X2q-sWhm7N22JkAg8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"525d59847811253292974731c313b209","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63"},"level":"info","message":"Attempting to finish experiment","requestID":"525d59847811253292974731c313b209"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"fd28c960-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1218,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:36Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1218,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.317557,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:36Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6ee4433f-df22-49fc-9a15-13564e528d3f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fd28c960-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/6ee4433f-df22-49fc-9a15-13564e528d3f","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615996,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5Nn0.5aM2-XXj7RLXkRNfo_JB0RONn4X2q-sWhm7N22JkAg8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fd28c960-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/6ee4433f-df22-49fc-9a15-13564e528d3f","device":"e757497b-b735-4c28-8b3f-f11988a0e75b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"441208b2-7e0d-43ad-a0f9-564ef21c9bfb","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"441208b2-7e0d-43ad-a0f9-564ef21c9bfb","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"441208b2-7e0d-43ad-a0f9-564ef21c9bfb","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/6ee4433f-df22-49fc-9a15-13564e528d3f' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/6ee4433f-df22-49fc-9a15-13564e528d3f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6ee4433f-df22-49fc-9a15-13564e528d3f","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6ee4433f-df22-49fc-9a15-13564e528d3f': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6ee4433f-df22-49fc-9a15-13564e528d3f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"15514f61-144e-4900-86bc-cc762a3faacf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615996.6874986} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e843202a-7d07-4e06-baee-30f7686b3b3b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615996.6881802} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ceb1f31715ad3b77f1974313bb996416","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 11ms","method":"POST","requestID":"fd28c960-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ceb1f31715ad3b77f1974313bb996416","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","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/6ee4433f-df22-49fc-9a15-13564e528d3f"}}},"level":"info","message":"received a callback","requestID":"ceb1f31715ad3b77f1974313bb996416"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"aa59191643bf20951282fc126bfaeace","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":"aa59191643bf20951282fc126bfaeace","responseTime":1,"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/6ee4433f-df22-49fc-9a15-13564e528d3f"}}},"level":"info","message":"received a callback","requestID":"aa59191643bf20951282fc126bfaeace"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"fd28c960-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/6ee4433f-df22-49fc-9a15-13564e528d3f 204 48ms","method":"DELETE","requestID":"fd28c960-50eb-11ef-8434-2f6d198c7397","responseTime":48,"status":204,"url":"/peerconnections/6ee4433f-df22-49fc-9a15-13564e528d3f"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63"},"level":"info","message":"Successfully finished experiment","requestID":"525d59847811253292974731c313b209"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fd3350b0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1219,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:36Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe757497b-b735-4c28-8b3f-f11988a0e75b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7fbe8af4-63fb-441c-b8c4-363a609d5612","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615996.7390337} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1219,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.615516,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fd3350b0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e757497b-b735-4c28-8b3f-f11988a0e75b","object_type":"device","rebac_allow":false,"scope_allow":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":"fd3350b0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2a38d47d-6352-4896-8fcc-cf689dbc1b63': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2a38d47d-6352-4896-8fcc-cf689dbc1b63","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"4af36c45-a739-4ccd-a01c-cd0d0f4203a1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615996.746389} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fd3350b0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/e757497b-b735-4c28-8b3f-f11988a0e75b/signaling 200 17ms","method":"POST","requestID":"fd3350b0-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/e757497b-b735-4c28-8b3f-f11988a0e75b/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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"178a505c-0e99-4988-a1b8-065eb8d7b21f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615996.7470093} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"525d59847811253292974731c313b209","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fd365df0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1220,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:36Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F441208b2-7e0d-43ad-a0f9-564ef21c9bfb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2d3783da-b454-440c-995e-8a8c7afbb09f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615996.7586274} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1220,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.158199,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fd365df0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb","object_type":"device","rebac_allow":false,"scope_allow":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":"fd365df0-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fd365df0-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb/signaling 200 14ms","method":"POST","requestID":"fd365df0-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/441208b2-7e0d-43ad-a0f9-564ef21c9bfb/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63","requestID":"525d59847811253292974731c313b209"} gateway-1 | {"time_local":"02/Aug/2024:16:26:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.173","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"525d59847811253292974731c313b209"} gateway-1 | {"time_local":"02/Aug/2024:16:26:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3231","request_time":"4.218","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"152fef5d84ac2eafcd6e1fb9e3cf7e91"} experiment-1 | {"level":"info","message":"DELETE /experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63 204 168ms","method":"DELETE","requestID":"525d59847811253292974731c313b209","responseTime":168,"status":204,"url":"/experiments/2a38d47d-6352-4896-8fcc-cf689dbc1b63"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"ceb1f31715ad3b77f1974313bb996416","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:36 +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":"ceb1f31715ad3b77f1974313bb996416"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"aa59191643bf20951282fc126bfaeace","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:36 +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":"aa59191643bf20951282fc126bfaeace"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5Nn0.5aM2-XXj7RLXkRNfo_JB0RONn4X2q-sWhm7N22JkAg8","level":"info","message":"auth send jwt","requestID":"7e0af738600a38fcf594009bcdab1a21"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7e0af738600a38fcf594009bcdab1a21","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7e0af738600a38fcf594009bcdab1a21"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1221,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:36Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1221,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.128355,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:36Z"} gateway-1 | {"time_local":"02/Aug/2024:16:26:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3094","request_time":"2.785","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":"0b052ba61148eef75fdaa653e5fde5ed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"7e0af738600a38fcf594009bcdab1a21","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615996,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5Nn0.5aM2-XXj7RLXkRNfo_JB0RONn4X2q-sWhm7N22JkAg8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7e0af738600a38fcf594009bcdab1a21","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/441208b2-7e0d-43ad-a0f9-564ef21c9bfb' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed80ecb-9378-4daf-9291-402032ed1353","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"37cea470-4348-4a3c-91b9-32817e0d8d0b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615996.8460765} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7e0af738600a38fcf594009bcdab1a21","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/e757497b-b735-4c28-8b3f-f11988a0e75b' 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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"63f6c5b3-6668-4e35-b1b1-aa7cd40b0632","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615996.8515015} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"7e0af738600a38fcf594009bcdab1a21","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed80ecb-9378-4daf-9291-402032ed1353","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"62f29631-d2a8-44a3-be26-ccb19713e241","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615996.8616557} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"97ee7108-96ea-462b-9aa8-083ce1fc4a24","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615996.8619363} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"7e0af738600a38fcf594009bcdab1a21","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed80ecb-9378-4daf-9291-402032ed1353","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed80ecb-9378-4daf-9291-402032ed1353","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:36.861618475Z"}]},"request_id":"63f356d3-b1fb-43f7-9850-783fef272392","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615996.8663793} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7e0af738600a38fcf594009bcdab1a21","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7e0af738600a38fcf594009bcdab1a21"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"7e0af738600a38fcf594009bcdab1a21","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7e0af738600a38fcf594009bcdab1a21"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5Nn0.5aM2-XXj7RLXkRNfo_JB0RONn4X2q-sWhm7N22JkAg8","level":"info","message":"auth send jwt","requestID":"7954146c54da2563f92689528fd9421e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7954146c54da2563f92689528fd9421e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7954146c54da2563f92689528fd9421e"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1222,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:36Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1222,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.801305,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"7954146c54da2563f92689528fd9421e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615996,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5Nn0.5aM2-XXj7RLXkRNfo_JB0RONn4X2q-sWhm7N22JkAg8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7954146c54da2563f92689528fd9421e","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef36f3c4-af19-4354-be86-9d52d2984e0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"120267b8-8845-4551-aaa9-a8a7c3d04e74","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615996.8883424} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7954146c54da2563f92689528fd9421e","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bb05ccba-b0b7-4a18-852a-8981f86268e2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615996.8931146} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"7954146c54da2563f92689528fd9421e","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef36f3c4-af19-4354-be86-9d52d2984e0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"8fddfdfe-d929-48ed-8bc6-bd6c588b123b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615996.9080102} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cbcff963-bbcd-41bc-95f0-91ff23185494","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615996.908112} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"7954146c54da2563f92689528fd9421e","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef36f3c4-af19-4354-be86-9d52d2984e0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef36f3c4-af19-4354-be86-9d52d2984e0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:36.907966912Z"}]},"request_id":"3faf3bcf-1c7a-4b1e-a5f5-9cae7c81dfad","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615996.9118433} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7954146c54da2563f92689528fd9421e","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7954146c54da2563f92689528fd9421e"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"7954146c54da2563f92689528fd9421e","responseTime":39,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7954146c54da2563f92689528fd9421e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5N30.IRiPOb_3nFyiYh_Q4qkwm4MgOXnyJRmwtlmddJNOVwo","level":"info","message":"auth send jwt","requestID":"386231abfca1db343b73b2711059c2b9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"386231abfca1db343b73b2711059c2b9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"386231abfca1db343b73b2711059c2b9"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1223,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1223,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.075433,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:37Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"386231abfca1db343b73b2711059c2b9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615997,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5N30.IRiPOb_3nFyiYh_Q4qkwm4MgOXnyJRmwtlmddJNOVwo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"386231abfca1db343b73b2711059c2b9","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef36f3c4-af19-4354-be86-9d52d2984e0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef36f3c4-af19-4354-be86-9d52d2984e0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:36.907966912Z"}]},"request_id":"8119f37a-a18d-4fd9-868b-12cffd7626c2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615997.434974} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"386231abfca1db343b73b2711059c2b9","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e5f25083-c9fa-407b-b3d1-478fac9d767c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615997.4405413} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"386231abfca1db343b73b2711059c2b9","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef36f3c4-af19-4354-be86-9d52d2984e0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef36f3c4-af19-4354-be86-9d52d2984e0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:36.907966912Z"}]},"request_id":"059255cf-6031-4bc8-8c78-b14afdc98d65","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615997.452847} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"386231abfca1db343b73b2711059c2b9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"386231abfca1db343b73b2711059c2b9"} gateway-1 | {"time_local":"02/Aug/2024:16:26:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ef36f3c4-af19-4354-be86-9d52d2984e0d HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.038","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"386231abfca1db343b73b2711059c2b9"} device-1 | {"level":"info","message":"PATCH /devices/ef36f3c4-af19-4354-be86-9d52d2984e0d 200 32ms","method":"PATCH","requestID":"386231abfca1db343b73b2711059c2b9","responseTime":32,"status":200,"url":"/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5N30.IRiPOb_3nFyiYh_Q4qkwm4MgOXnyJRmwtlmddJNOVwo","level":"info","message":"auth send jwt","requestID":"81ecdd8a12b2bdb5dcfda4b708d8380b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"81ecdd8a12b2bdb5dcfda4b708d8380b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"81ecdd8a12b2bdb5dcfda4b708d8380b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1224,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:37Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1224,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.17742,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:37Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"81ecdd8a12b2bdb5dcfda4b708d8380b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615997,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5N30.IRiPOb_3nFyiYh_Q4qkwm4MgOXnyJRmwtlmddJNOVwo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"81ecdd8a12b2bdb5dcfda4b708d8380b","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"81ecdd8a12b2bdb5dcfda4b708d8380b"} gateway-1 | {"time_local":"02/Aug/2024:16:26:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ef36f3c4-af19-4354-be86-9d52d2984e0d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"81ecdd8a12b2bdb5dcfda4b708d8380b"} device-1 | {"level":"info","message":"POST /devices/ef36f3c4-af19-4354-be86-9d52d2984e0d/websocket 200 19ms","method":"POST","requestID":"81ecdd8a12b2bdb5dcfda4b708d8380b","responseTime":19,"status":200,"url":"/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8f5a2c636e0b67a98cca388f62a05518","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":"8f5a2c636e0b67a98cca388f62a05518","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/fed80ecb-9378-4daf-9291-402032ed1353/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":"8f5a2c636e0b67a98cca388f62a05518"} device-1 | {"level":"info","message":"OPTIONS /devices/fed80ecb-9378-4daf-9291-402032ed1353/websocket 200 2ms","method":"OPTIONS","requestID":"8f5a2c636e0b67a98cca388f62a05518","responseTime":2,"status":200,"url":"/devices/fed80ecb-9378-4daf-9291-402032ed1353/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5OH0.nRIrS3EMYY5D6p-tWcMvodexeMNvuB2XnpWRszbkvr8","level":"info","message":"auth send jwt","requestID":"e604f9d2f650ce58acafb5f2a407cee2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e604f9d2f650ce58acafb5f2a407cee2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e604f9d2f650ce58acafb5f2a407cee2"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1225,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:38Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1225,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.289055,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e604f9d2f650ce58acafb5f2a407cee2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615998,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5OH0.nRIrS3EMYY5D6p-tWcMvodexeMNvuB2XnpWRszbkvr8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e604f9d2f650ce58acafb5f2a407cee2","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e604f9d2f650ce58acafb5f2a407cee2"} gateway-1 | {"time_local":"02/Aug/2024:16:26:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/fed80ecb-9378-4daf-9291-402032ed1353/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":"e604f9d2f650ce58acafb5f2a407cee2"} device-1 | {"level":"info","message":"POST /devices/fed80ecb-9378-4daf-9291-402032ed1353/websocket 200 22ms","method":"POST","requestID":"e604f9d2f650ce58acafb5f2a407cee2","responseTime":22,"status":200,"url":"/devices/fed80ecb-9378-4daf-9291-402032ed1353/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4c356f3466b3310d143ae7b42ac94e7e","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":"4c356f3466b3310d143ae7b42ac94e7e","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/fed80ecb-9378-4daf-9291-402032ed1353? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"4c356f3466b3310d143ae7b42ac94e7e"} device-1 | {"level":"info","message":"OPTIONS /devices/fed80ecb-9378-4daf-9291-402032ed1353? 200 1ms","method":"OPTIONS","requestID":"4c356f3466b3310d143ae7b42ac94e7e","responseTime":1,"status":200,"url":"/devices/fed80ecb-9378-4daf-9291-402032ed1353?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5OX0.1xOFIyNWJwa6bSKwRSQAo-QXkR7QTUoMqetjqoOLltA","level":"info","message":"auth send jwt","requestID":"24bf1f84941ff628eb26136a7758ad21"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"24bf1f84941ff628eb26136a7758ad21","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"24bf1f84941ff628eb26136a7758ad21"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1226,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1226,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.359484,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"24bf1f84941ff628eb26136a7758ad21","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615999,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5OX0.1xOFIyNWJwa6bSKwRSQAo-QXkR7QTUoMqetjqoOLltA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"24bf1f84941ff628eb26136a7758ad21","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed80ecb-9378-4daf-9291-402032ed1353","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed80ecb-9378-4daf-9291-402032ed1353","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:36.861618475Z"}]},"request_id":"b4fd0351-2731-4c44-89b4-bcd823c8423f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615999.0332956} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"24bf1f84941ff628eb26136a7758ad21","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d415ee46-35d8-44e3-846d-cf201cf38b35","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615999.0400043} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"24bf1f84941ff628eb26136a7758ad21","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed80ecb-9378-4daf-9291-402032ed1353","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed80ecb-9378-4daf-9291-402032ed1353","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:36.861618475Z"}]},"request_id":"2e41d5ab-db55-4478-8313-699fada61f5e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615999.0542152} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"24bf1f84941ff628eb26136a7758ad21","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"24bf1f84941ff628eb26136a7758ad21"} gateway-1 | {"time_local":"02/Aug/2024:16:26:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/fed80ecb-9378-4daf-9291-402032ed1353? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.045","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":"24bf1f84941ff628eb26136a7758ad21"} device-1 | {"level":"info","message":"PATCH /devices/fed80ecb-9378-4daf-9291-402032ed1353? 200 39ms","method":"PATCH","requestID":"24bf1f84941ff628eb26136a7758ad21","responseTime":39,"status":200,"url":"/devices/fed80ecb-9378-4daf-9291-402032ed1353?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5OX0.1xOFIyNWJwa6bSKwRSQAo-QXkR7QTUoMqetjqoOLltA","level":"info","message":"auth send jwt","requestID":"f212c41ff47e9c65924fa390c439ef69"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f212c41ff47e9c65924fa390c439ef69","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f212c41ff47e9c65924fa390c439ef69"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1227,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1227,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.175402,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f212c41ff47e9c65924fa390c439ef69","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615999,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5OX0.1xOFIyNWJwa6bSKwRSQAo-QXkR7QTUoMqetjqoOLltA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f212c41ff47e9c65924fa390c439ef69","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed80ecb-9378-4daf-9291-402032ed1353","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed80ecb-9378-4daf-9291-402032ed1353","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:36.861618475Z"}]},"request_id":"9e86d197-60de-4738-b97a-5c5590bc2f3e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615999.0814695} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f212c41ff47e9c65924fa390c439ef69","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f212c41ff47e9c65924fa390c439ef69"} device-1 | {"level":"info","message":"GET /devices/fed80ecb-9378-4daf-9291-402032ed1353? 200 16ms","method":"GET","requestID":"f212c41ff47e9c65924fa390c439ef69","responseTime":16,"status":200,"url":"/devices/fed80ecb-9378-4daf-9291-402032ed1353?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/fed80ecb-9378-4daf-9291-402032ed1353? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f212c41ff47e9c65924fa390c439ef69"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5OX0.1xOFIyNWJwa6bSKwRSQAo-QXkR7QTUoMqetjqoOLltA","level":"info","message":"auth send jwt","requestID":"658ce1b62a988ff3815507d231646f9b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"658ce1b62a988ff3815507d231646f9b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"658ce1b62a988ff3815507d231646f9b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1228,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1228,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.07427,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"658ce1b62a988ff3815507d231646f9b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615999,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5OX0.1xOFIyNWJwa6bSKwRSQAo-QXkR7QTUoMqetjqoOLltA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"658ce1b62a988ff3815507d231646f9b","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef36f3c4-af19-4354-be86-9d52d2984e0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef36f3c4-af19-4354-be86-9d52d2984e0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:36.907966912Z"}]},"request_id":"701a7d16-a89b-41d8-9524-d519780e8b91","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615999.1044624} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"658ce1b62a988ff3815507d231646f9b","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"658ce1b62a988ff3815507d231646f9b"} gateway-1 | {"time_local":"02/Aug/2024:16:26:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ef36f3c4-af19-4354-be86-9d52d2984e0d? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"658ce1b62a988ff3815507d231646f9b"} device-1 | {"level":"info","message":"GET /devices/ef36f3c4-af19-4354-be86-9d52d2984e0d? 200 15ms","method":"GET","requestID":"658ce1b62a988ff3815507d231646f9b","responseTime":15,"status":200,"url":"/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5OX0.1xOFIyNWJwa6bSKwRSQAo-QXkR7QTUoMqetjqoOLltA","level":"info","message":"auth send jwt","requestID":"2f079a9ee8a2e259ebdad010ac084623"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2f079a9ee8a2e259ebdad010ac084623","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"2f079a9ee8a2e259ebdad010ac084623"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1229,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1229,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.767545,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"2f079a9ee8a2e259ebdad010ac084623","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615999,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5OX0.1xOFIyNWJwa6bSKwRSQAo-QXkR7QTUoMqetjqoOLltA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2f079a9ee8a2e259ebdad010ac084623","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83946435-d9cd-483a-b8d7-8318f593e7b8"},"level":"info","message":"Attempting to run experiment","requestID":"2f079a9ee8a2e259ebdad010ac084623"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83946435-d9cd-483a-b8d7-8318f593e7b8"},"level":"info","message":"Attempting to book experiment","requestID":"2f079a9ee8a2e259ebdad010ac084623"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83946435-d9cd-483a-b8d7-8318f593e7b8"},"level":"info","message":"Successfully booked experiment","requestID":"2f079a9ee8a2e259ebdad010ac084623"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fea50920-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fea55740-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1230,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1230,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.632374,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fea50920-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615999,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5OX0.1xOFIyNWJwa6bSKwRSQAo-QXkR7QTUoMqetjqoOLltA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fea50920-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38636","level":"info","msg":"Received request.","req_id":1231,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"client_addr":"127.0.0.1:38636","level":"info","msg":"Sent response.","req_id":1231,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.985918,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fea55740-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615999,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5OX0.1xOFIyNWJwa6bSKwRSQAo-QXkR7QTUoMqetjqoOLltA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fea55740-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed80ecb-9378-4daf-9291-402032ed1353","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed80ecb-9378-4daf-9291-402032ed1353","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:36.861618475Z"}]},"request_id":"cf379ecd-533d-4b06-b9c5-812856110cbf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615999.163969} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fea50920-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef36f3c4-af19-4354-be86-9d52d2984e0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef36f3c4-af19-4354-be86-9d52d2984e0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:36.907966912Z"}]},"request_id":"00cad396-d8ee-408b-8adf-2d6154d5c78a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615999.1668444} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fea50920-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"fea55740-50eb-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/fed80ecb-9378-4daf-9291-402032ed1353? 200 13ms","method":"GET","requestID":"fea50920-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/fed80ecb-9378-4daf-9291-402032ed1353?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fea55740-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/ef36f3c4-af19-4354-be86-9d52d2984e0d? 200 14ms","method":"GET","requestID":"fea55740-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83946435-d9cd-483a-b8d7-8318f593e7b8"},"level":"info","message":"Setting up experiment","requestID":"2f079a9ee8a2e259ebdad010ac084623"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83946435-d9cd-483a-b8d7-8318f593e7b8"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"2f079a9ee8a2e259ebdad010ac084623"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83946435-d9cd-483a-b8d7-8318f593e7b8"},"level":"info","message":"Successfully locked booking for experiment","requestID":"2f079a9ee8a2e259ebdad010ac084623"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83946435-d9cd-483a-b8d7-8318f593e7b8"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"2f079a9ee8a2e259ebdad010ac084623"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83946435-d9cd-483a-b8d7-8318f593e7b8"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"2f079a9ee8a2e259ebdad010ac084623"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83946435-d9cd-483a-b8d7-8318f593e7b8"},"level":"info","message":"Attempting to update booking for experiment","requestID":"2f079a9ee8a2e259ebdad010ac084623"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83946435-d9cd-483a-b8d7-8318f593e7b8"},"level":"info","message":"Successfully updated booking for experiment","requestID":"2f079a9ee8a2e259ebdad010ac084623"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83946435-d9cd-483a-b8d7-8318f593e7b8"},"level":"info","message":"Successfully set up experiment","requestID":"2f079a9ee8a2e259ebdad010ac084623"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"feaef430-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"feaf1b40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"feaf4250-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83946435-d9cd-483a-b8d7-8318f593e7b8"},"level":"info","message":"Successfully running experiment","requestID":"2f079a9ee8a2e259ebdad010ac084623"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1232,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"client_addr":"127.0.0.1:38636","level":"info","msg":"Received request.","req_id":1233,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1232,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.986842,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"feaef430-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615999,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5OX0.1xOFIyNWJwa6bSKwRSQAo-QXkR7QTUoMqetjqoOLltA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"feaef430-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38636","level":"info","msg":"Sent response.","req_id":1233,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.626552,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"feaf1b40-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615999,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5OX0.1xOFIyNWJwa6bSKwRSQAo-QXkR7QTUoMqetjqoOLltA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"feaf1b40-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38646","level":"info","msg":"Received request.","req_id":1234,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef36f3c4-af19-4354-be86-9d52d2984e0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef36f3c4-af19-4354-be86-9d52d2984e0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:36.907966912Z"}]},"request_id":"77a2a87e-4ec4-428a-bb3a-96e98ce73869","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615999.2281806} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed80ecb-9378-4daf-9291-402032ed1353","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"250f9a31-12ef-4277-ac3c-a816c0c869a6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615999.228423} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"feaf1b40-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed80ecb-9378-4daf-9291-402032ed1353","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed80ecb-9378-4daf-9291-402032ed1353","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:36.861618475Z"}]},"request_id":"1532b16a-9ce9-4ace-8857-da959bacc23f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615999.2289302} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"feaef430-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:38646","level":"info","msg":"Sent response.","req_id":1234,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.392136,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"feaf4250-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353","object_type":"device","rebac_allow":false,"scope_allow":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":"feaf4250-50eb-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"feaef430-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/fed80ecb-9378-4daf-9291-402032ed1353? 200 17ms","method":"GET","requestID":"feaef430-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/fed80ecb-9378-4daf-9291-402032ed1353?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"feaf1b40-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/ef36f3c4-af19-4354-be86-9d52d2984e0d? 200 18ms","method":"GET","requestID":"feaf1b40-50eb-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"feaf4250-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/fed80ecb-9378-4daf-9291-402032ed1353/signaling 200 18ms","method":"POST","requestID":"feaf4250-50eb-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/fed80ecb-9378-4daf-9291-402032ed1353/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"feb22880-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F83946435-d9cd-483a-b8d7-8318f593e7b8#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F83946435-d9cd-483a-b8d7-8318f593e7b8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"5c89c635-77d5-443e-8828-9d879eee2791","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615999.2421641} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"feb276a0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c9d130f2-b3d2-42d6-bbf4-64bcc550944e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615999.242584} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"2f079a9ee8a2e259ebdad010ac084623","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1235,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed80ecb-9378-4daf-9291-402032ed1353","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"987884d8-d881-48df-983a-057a5474f434","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615999.2459397} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1235,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.776515,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"client_addr":"127.0.0.1:38636","level":"info","msg":"Received request.","req_id":1236,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"feb22880-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353","object_type":"device","rebac_allow":false,"scope_allow":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":"feb22880-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef36f3c4-af19-4354-be86-9d52d2984e0d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"21d6ba9e-49c3-4af3-b457-b0b9a01cce8c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615999.2490065} authorization-1 | {"client_addr":"127.0.0.1:38636","level":"info","msg":"Sent response.","req_id":1236,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.142777,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"feb276a0-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d","object_type":"device","rebac_allow":false,"scope_allow":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":"feb276a0-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/83946435-d9cd-483a-b8d7-8318f593e7b8","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"2f079a9ee8a2e259ebdad010ac084623"} experiment-1 | {"level":"info","message":"POST /experiments? 201 137ms","method":"POST","requestID":"2f079a9ee8a2e259ebdad010ac084623","responseTime":137,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.141","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2f079a9ee8a2e259ebdad010ac084623"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"feb22880-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/fed80ecb-9378-4daf-9291-402032ed1353/signaling 200 14ms","method":"POST","requestID":"feb22880-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/fed80ecb-9378-4daf-9291-402032ed1353/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"feb49980-50eb-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5OX0.1xOFIyNWJwa6bSKwRSQAo-QXkR7QTUoMqetjqoOLltA","level":"info","message":"auth send jwt","requestID":"f071aae12468f9aef62ba3965571dcfa"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f071aae12468f9aef62ba3965571dcfa","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"feb276a0-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1237,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:39Z"} device-1 | {"level":"info","message":"POST /devices/ef36f3c4-af19-4354-be86-9d52d2984e0d/signaling 200 17ms","method":"POST","requestID":"feb276a0-50eb-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f071aae12468f9aef62ba3965571dcfa"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef36f3c4-af19-4354-be86-9d52d2984e0d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"750916fe-3255-403e-9290-0469a4648708","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615999.2617106} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1237,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.76094,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"client_addr":"127.0.0.1:38636","level":"info","msg":"Received request.","req_id":1238,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"feb49980-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d","object_type":"device","rebac_allow":false,"scope_allow":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":"feb49980-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38636","level":"info","msg":"Sent response.","req_id":1238,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.948864,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f071aae12468f9aef62ba3965571dcfa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615999,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5OX0.1xOFIyNWJwa6bSKwRSQAo-QXkR7QTUoMqetjqoOLltA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f071aae12468f9aef62ba3965571dcfa","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"feb49980-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/ef36f3c4-af19-4354-be86-9d52d2984e0d/signaling 200 11ms","method":"POST","requestID":"feb49980-50eb-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d/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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed80ecb-9378-4daf-9291-402032ed1353","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed80ecb-9378-4daf-9291-402032ed1353","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:36.861618475Z"}]},"request_id":"b44cccb7-0556-4c2d-9721-9e2a7d8e93c1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615999.2677062} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83946435-d9cd-483a-b8d7-8318f593e7b8"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"2f079a9ee8a2e259ebdad010ac084623"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f071aae12468f9aef62ba3965571dcfa","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"feb69550-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"feb6bc60-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1239,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"client_addr":"127.0.0.1:38636","level":"info","msg":"Received request.","req_id":1240,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:39Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f071aae12468f9aef62ba3965571dcfa"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1239,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.945949,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:39Z"} gateway-1 | {"time_local":"02/Aug/2024:16:26:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/fed80ecb-9378-4daf-9291-402032ed1353? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f071aae12468f9aef62ba3965571dcfa"} device-1 | {"level":"info","message":"GET /devices/fed80ecb-9378-4daf-9291-402032ed1353? 200 13ms","method":"GET","requestID":"f071aae12468f9aef62ba3965571dcfa","responseTime":13,"status":200,"url":"/devices/fed80ecb-9378-4daf-9291-402032ed1353?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"feb69550-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615999,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5OX0.1xOFIyNWJwa6bSKwRSQAo-QXkR7QTUoMqetjqoOLltA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"feb69550-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38636","level":"info","msg":"Sent response.","req_id":1240,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.705853,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"feb6bc60-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615999,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5OX0.1xOFIyNWJwa6bSKwRSQAo-QXkR7QTUoMqetjqoOLltA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"feb6bc60-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed80ecb-9378-4daf-9291-402032ed1353","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed80ecb-9378-4daf-9291-402032ed1353","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:36.861618475Z"}]},"request_id":"1d47366b-cc1b-45df-9e02-85d2bfe6db94","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615999.2763355} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5OX0.1xOFIyNWJwa6bSKwRSQAo-QXkR7QTUoMqetjqoOLltA","level":"info","message":"auth send jwt","requestID":"e1993e74a5d557fa62b15e0d18784c63"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e1993e74a5d557fa62b15e0d18784c63","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"feb69550-50eb-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef36f3c4-af19-4354-be86-9d52d2984e0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef36f3c4-af19-4354-be86-9d52d2984e0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:36.907966912Z"}]},"request_id":"8e286ea9-953d-4bf8-b756-363c2b48e443","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615999.27698} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"feb6bc60-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e1993e74a5d557fa62b15e0d18784c63"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1241,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1241,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.708429,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e1993e74a5d557fa62b15e0d18784c63","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615999,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5OX0.1xOFIyNWJwa6bSKwRSQAo-QXkR7QTUoMqetjqoOLltA"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"feb69550-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"e1993e74a5d557fa62b15e0d18784c63","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/fed80ecb-9378-4daf-9291-402032ed1353? 200 14ms","method":"GET","requestID":"feb69550-50eb-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/fed80ecb-9378-4daf-9291-402032ed1353?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"feb6bc60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/ef36f3c4-af19-4354-be86-9d52d2984e0d? 200 13ms","method":"GET","requestID":"feb6bc60-50eb-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83946435-d9cd-483a-b8d7-8318f593e7b8"},"level":"info","message":"Building connection plan","requestID":"2f079a9ee8a2e259ebdad010ac084623"} 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":"1a7bbf9c-10d9-47e1-a0b7-9a0003a73012"},{"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":"bcfb982a-f193-47c2-8534-0db798012a23"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"0782a3ef-9d8b-4070-a7cb-04534a48a828"}]},"level":"info","message":"Built pairwise service configurations","requestID":"2f079a9ee8a2e259ebdad010ac084623"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"2f079a9ee8a2e259ebdad010ac084623"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"feb92d60-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef36f3c4-af19-4354-be86-9d52d2984e0d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef36f3c4-af19-4354-be86-9d52d2984e0d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:36.907966912Z"}]},"request_id":"ff64fecf-5e2e-4056-b84f-b4f7571494b1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615999.2865095} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e1993e74a5d557fa62b15e0d18784c63","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1242,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1242,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.717769,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:39Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e1993e74a5d557fa62b15e0d18784c63"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"feb92d60-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722615999,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNTk5OX0.1xOFIyNWJwa6bSKwRSQAo-QXkR7QTUoMqetjqoOLltA"} gateway-1 | {"time_local":"02/Aug/2024:16:26:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ef36f3c4-af19-4354-be86-9d52d2984e0d? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e1993e74a5d557fa62b15e0d18784c63"} device-1 | {"level":"info","message":"GET /devices/ef36f3c4-af19-4354-be86-9d52d2984e0d? 200 12ms","method":"GET","requestID":"e1993e74a5d557fa62b15e0d18784c63","responseTime":12,"status":200,"url":"/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d?"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"feb92d60-50eb-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"d7663635-da98-4157-a116-7d31c51571f8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615999.2963796} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"20cb9940-1669-4e57-8695-4caadfd799d1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615999.2965527} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"feb92d60-50eb-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"feb92d60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"feb92d60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/33d45901-745d-401a-b706-9b8b8fc3d1b8'","requestID":"feb92d60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/33d45901-745d-401a-b706-9b8b8fc3d1b8'","requestID":"feb92d60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"feb92d60-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 22ms","method":"POST","requestID":"feb92d60-50eb-11ef-8434-2f6d198c7397","responseTime":22,"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":"feb92d60-50eb-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83946435-d9cd-483a-b8d7-8318f593e7b8"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"2f079a9ee8a2e259ebdad010ac084623"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fec05950-50eb-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1243,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:39Z"} device-1 | {"device":"fed80ecb-9378-4daf-9291-402032ed1353","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"fed80ecb-9378-4daf-9291-402032ed1353","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed80ecb-9378-4daf-9291-402032ed1353","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0a781487-eea5-4f97-94ce-cfcf3d820b02","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615999.337895} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1243,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.49359,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fec05950-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353","object_type":"device","rebac_allow":false,"scope_allow":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":"fec05950-50eb-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fec05950-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/fed80ecb-9378-4daf-9291-402032ed1353/signaling 200 10ms","method":"POST","requestID":"fec05950-50eb-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/fed80ecb-9378-4daf-9291-402032ed1353/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fec22e10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"content":{"sdp":"v=0\r\no=- 2439142805061649879 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:hoo0\r\na=ice-pwd:PX/2E6Xlyt1XakK1S65FMcsA\r\na=ice-options:trickle\r\na=fingerprint:sha-256 42:B6:7D:10:2F:9F:E9:E0:86:F8:1F:41:BE:CA:27:21:AE:AF:29:0E:1F:84:BF:75:57:D9:CE:B6:A5:CA:B1:C3\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"fed80ecb-9378-4daf-9291-402032ed1353","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1244,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef36f3c4-af19-4354-be86-9d52d2984e0d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f8920ebc-2f31-4d15-a0cf-c826572cd497","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722615999.3498461} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1244,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.413353,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fec22e10-50eb-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d","object_type":"device","rebac_allow":false,"scope_allow":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":"fec22e10-50eb-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fec22e10-50eb-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/ef36f3c4-af19-4354-be86-9d52d2984e0d/signaling 200 8ms","method":"POST","requestID":"fec22e10-50eb-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d/signaling"} device-1 | {"device":"ef36f3c4-af19-4354-be86-9d52d2984e0d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"33d45901-745d-401a-b706-9b8b8fc3d1b8","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ef36f3c4-af19-4354-be86-9d52d2984e0d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"ef36f3c4-af19-4354-be86-9d52d2984e0d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"ef36f3c4-af19-4354-be86-9d52d2984e0d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"ef36f3c4-af19-4354-be86-9d52d2984e0d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/33d45901-745d-401a-b706-9b8b8fc3d1b8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"33d45901-745d-401a-b706-9b8b8fc3d1b8","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d6c285f3549b1a790208369ba9183d37","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":"d6c285f3549b1a790208369ba9183d37","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/33d45901-745d-401a-b706-9b8b8fc3d1b8"}}},"level":"info","message":"received a callback","requestID":"d6c285f3549b1a790208369ba9183d37"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"d6c285f3549b1a790208369ba9183d37","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:41 +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":"d6c285f3549b1a790208369ba9183d37"} device-1 | {"content":{"candidate":"candidate:2542857962 1 udp 2113937151 2ac95865-7002-4b10-bdce-020e438bf606.local 33407 typ host generation 0 ufrag hoo0 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"fed80ecb-9378-4daf-9291-402032ed1353","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2680726829 1 udp 1677729535 141.24.211.56 33407 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag hoo0 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"fed80ecb-9378-4daf-9291-402032ed1353","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:568598239 1 udp 33562623 141.24.210.113 63455 typ relay raddr 141.24.211.56 rport 33407 generation 0 ufrag hoo0 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"fed80ecb-9378-4daf-9291-402032ed1353","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"fed80ecb-9378-4daf-9291-402032ed1353","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"fed80ecb-9378-4daf-9291-402032ed1353","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353'"} device-1 | {"data":{"peerconnection":"33d45901-745d-401a-b706-9b8b8fc3d1b8","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ef36f3c4-af19-4354-be86-9d52d2984e0d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"fed80ecb-9378-4daf-9291-402032ed1353","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"33d45901-745d-401a-b706-9b8b8fc3d1b8","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ef36f3c4-af19-4354-be86-9d52d2984e0d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/33d45901-745d-401a-b706-9b8b8fc3d1b8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"33d45901-745d-401a-b706-9b8b8fc3d1b8","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"703c275f98543152ebbae0505f92d2cc","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":"703c275f98543152ebbae0505f92d2cc","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/33d45901-745d-401a-b706-9b8b8fc3d1b8"}}},"level":"info","message":"received a callback","requestID":"703c275f98543152ebbae0505f92d2cc"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"000423f0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1245,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:41Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F33d45901-745d-401a-b706-9b8b8fc3d1b8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"81a43825-b5c2-470f-ae1f-8a445c3d239a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616001.4612327} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1245,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.690952,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/33d45901-745d-401a-b706-9b8b8fc3d1b8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"000423f0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/33d45901-745d-401a-b706-9b8b8fc3d1b8","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":"000423f0-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"000423f0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/33d45901-745d-401a-b706-9b8b8fc3d1b8 200 12ms","method":"GET","requestID":"000423f0-50ec-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/peerconnections/33d45901-745d-401a-b706-9b8b8fc3d1b8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 43ms","method":"POST","requestID":"703c275f98543152ebbae0505f92d2cc","responseTime":43,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:41 +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.047","http_referrer":"","http_user_agent":"node-fetch","requestID":"703c275f98543152ebbae0505f92d2cc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0009a230-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1246,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:41Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef36f3c4-af19-4354-be86-9d52d2984e0d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3eab9675-06ce-410c-818c-13dde571b297","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616001.4977915} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1246,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.709647,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0009a230-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d","object_type":"device","rebac_allow":false,"scope_allow":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":"0009a230-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0009a230-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/ef36f3c4-af19-4354-be86-9d52d2984e0d/signaling 200 13ms","method":"POST","requestID":"0009a230-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"000c1330-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1247,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:41Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed80ecb-9378-4daf-9291-402032ed1353","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"05cf28d8-1ea1-4974-8aa8-e0f7314f1cb8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616001.5138888} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1247,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.851051,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"000c1330-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353","object_type":"device","rebac_allow":false,"scope_allow":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":"000c1330-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"000c1330-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/fed80ecb-9378-4daf-9291-402032ed1353/signaling 200 14ms","method":"POST","requestID":"000c1330-50ec-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/fed80ecb-9378-4daf-9291-402032ed1353/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwMX0.mdDOXqQ_nIu7qWQNEX-igfQkbWZaPxaY70X54M8q7yg","level":"info","message":"auth send jwt","requestID":"b57ff976e712abce3b6dda9ccb59d1d2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b57ff976e712abce3b6dda9ccb59d1d2","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/83946435-d9cd-483a-b8d7-8318f593e7b8","requestID":"b57ff976e712abce3b6dda9ccb59d1d2"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1248,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:41Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1248,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.509611,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/83946435-d9cd-483a-b8d7-8318f593e7b8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b57ff976e712abce3b6dda9ccb59d1d2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/83946435-d9cd-483a-b8d7-8318f593e7b8","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616001,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwMX0.mdDOXqQ_nIu7qWQNEX-igfQkbWZaPxaY70X54M8q7yg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b57ff976e712abce3b6dda9ccb59d1d2","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/83946435-d9cd-483a-b8d7-8318f593e7b8","requestID":"b57ff976e712abce3b6dda9ccb59d1d2"} experiment-1 | {"level":"info","message":"GET /experiments/83946435-d9cd-483a-b8d7-8318f593e7b8 200 15ms","method":"GET","requestID":"b57ff976e712abce3b6dda9ccb59d1d2","responseTime":15,"status":200,"url":"/experiments/83946435-d9cd-483a-b8d7-8318f593e7b8"} gateway-1 | {"time_local":"02/Aug/2024:16:26:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/83946435-d9cd-483a-b8d7-8318f593e7b8 HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b57ff976e712abce3b6dda9ccb59d1d2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwMX0.mdDOXqQ_nIu7qWQNEX-igfQkbWZaPxaY70X54M8q7yg","level":"info","message":"auth send jwt","requestID":"3f1b3e2cf918d5229ab710b45aa9f90a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3f1b3e2cf918d5229ab710b45aa9f90a","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/83946435-d9cd-483a-b8d7-8318f593e7b8","requestID":"3f1b3e2cf918d5229ab710b45aa9f90a"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1249,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:41Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1249,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.305219,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:41Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/83946435-d9cd-483a-b8d7-8318f593e7b8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"3f1b3e2cf918d5229ab710b45aa9f90a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/83946435-d9cd-483a-b8d7-8318f593e7b8","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616001,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwMX0.mdDOXqQ_nIu7qWQNEX-igfQkbWZaPxaY70X54M8q7yg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3f1b3e2cf918d5229ab710b45aa9f90a","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83946435-d9cd-483a-b8d7-8318f593e7b8"},"level":"info","message":"Attempting to finish experiment","requestID":"3f1b3e2cf918d5229ab710b45aa9f90a"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"0017abf0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1250,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:41Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1250,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.325715,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:41Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/33d45901-745d-401a-b706-9b8b8fc3d1b8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0017abf0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/33d45901-745d-401a-b706-9b8b8fc3d1b8","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616001,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwMX0.mdDOXqQ_nIu7qWQNEX-igfQkbWZaPxaY70X54M8q7yg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0017abf0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/33d45901-745d-401a-b706-9b8b8fc3d1b8","device":"fed80ecb-9378-4daf-9291-402032ed1353","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"ef36f3c4-af19-4354-be86-9d52d2984e0d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"ef36f3c4-af19-4354-be86-9d52d2984e0d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"ef36f3c4-af19-4354-be86-9d52d2984e0d","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/33d45901-745d-401a-b706-9b8b8fc3d1b8' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/33d45901-745d-401a-b706-9b8b8fc3d1b8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"33d45901-745d-401a-b706-9b8b8fc3d1b8","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F33d45901-745d-401a-b706-9b8b8fc3d1b8': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F33d45901-745d-401a-b706-9b8b8fc3d1b8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"c3cfb7ad-2d08-4d33-a85f-7356735d039d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616001.6083508} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"60673838d5d413e38db120f20c283d21","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"79aca5f3-cf81-417b-b94f-f37aa3c058cb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616001.609074} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"60673838d5d413e38db120f20c283d21","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"0017abf0-50ec-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0905f25b6fbfdfe28f356a55ef809523","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/33d45901-745d-401a-b706-9b8b8fc3d1b8"}}},"level":"info","message":"received a callback","requestID":"60673838d5d413e38db120f20c283d21"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0905f25b6fbfdfe28f356a55ef809523","responseTime":1,"status":200,"url":"/auth"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/33d45901-745d-401a-b706-9b8b8fc3d1b8"}}},"level":"info","message":"received a callback","requestID":"0905f25b6fbfdfe28f356a55ef809523"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"0017abf0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/33d45901-745d-401a-b706-9b8b8fc3d1b8 204 48ms","method":"DELETE","requestID":"0017abf0-50ec-11ef-8434-2f6d198c7397","responseTime":48,"status":204,"url":"/peerconnections/33d45901-745d-401a-b706-9b8b8fc3d1b8"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83946435-d9cd-483a-b8d7-8318f593e7b8"},"level":"info","message":"Successfully finished experiment","requestID":"3f1b3e2cf918d5229ab710b45aa9f90a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"00225a50-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1251,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:41Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fef36f3c4-af19-4354-be86-9d52d2984e0d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f4ccd0bc-c842-47a7-8b5c-00335e83ac24","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616001.6602745} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1251,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.62508,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"00225a50-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d","object_type":"device","rebac_allow":false,"scope_allow":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":"00225a50-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F83946435-d9cd-483a-b8d7-8318f593e7b8': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F83946435-d9cd-483a-b8d7-8318f593e7b8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"bbf0d222-8703-4e22-b0d5-951ed7be19c3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616001.6671004} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"00225a50-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/ef36f3c4-af19-4354-be86-9d52d2984e0d/signaling 200 15ms","method":"POST","requestID":"00225a50-50ec-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/ef36f3c4-af19-4354-be86-9d52d2984e0d/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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4ce666c7-31b4-42c5-ba23-fa82811000ca","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616001.66795} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"3f1b3e2cf918d5229ab710b45aa9f90a","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"00251970-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1252,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:41Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffed80ecb-9378-4daf-9291-402032ed1353","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c298ae59-f0d4-457a-b01e-8c95a3df3aa0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616001.677359} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1252,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.74681,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"00251970-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fed80ecb-9378-4daf-9291-402032ed1353","object_type":"device","rebac_allow":false,"scope_allow":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":"00251970-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"00251970-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/fed80ecb-9378-4daf-9291-402032ed1353/signaling 200 14ms","method":"POST","requestID":"00251970-50ec-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/fed80ecb-9378-4daf-9291-402032ed1353/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/83946435-d9cd-483a-b8d7-8318f593e7b8","requestID":"3f1b3e2cf918d5229ab710b45aa9f90a"} gateway-1 | {"time_local":"02/Aug/2024:16:26:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/83946435-d9cd-483a-b8d7-8318f593e7b8 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.179","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3f1b3e2cf918d5229ab710b45aa9f90a"} experiment-1 | {"level":"info","message":"DELETE /experiments/83946435-d9cd-483a-b8d7-8318f593e7b8 204 175ms","method":"DELETE","requestID":"3f1b3e2cf918d5229ab710b45aa9f90a","responseTime":175,"status":204,"url":"/experiments/83946435-d9cd-483a-b8d7-8318f593e7b8"} gateway-1 | {"time_local":"02/Aug/2024:16:26:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3623","request_time":"4.263","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"dafae7aab11a422255ce5a5446587c14"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 134ms","method":"POST","requestID":"60673838d5d413e38db120f20c283d21","responseTime":134,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:41 +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":"60673838d5d413e38db120f20c283d21"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"0905f25b6fbfdfe28f356a55ef809523","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:41 +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.139","http_referrer":"","http_user_agent":"node-fetch","requestID":"0905f25b6fbfdfe28f356a55ef809523"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwMX0.mdDOXqQ_nIu7qWQNEX-igfQkbWZaPxaY70X54M8q7yg","level":"info","message":"auth send jwt","requestID":"dfe068bf003b2d869cf02ba2f087fac6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dfe068bf003b2d869cf02ba2f087fac6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"dfe068bf003b2d869cf02ba2f087fac6"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1253,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:41Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1253,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.063379,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"dfe068bf003b2d869cf02ba2f087fac6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616001,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwMX0.mdDOXqQ_nIu7qWQNEX-igfQkbWZaPxaY70X54M8q7yg"} gateway-1 | {"time_local":"02/Aug/2024:16:26:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3089","request_time":"2.780","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":"31bbc15f6c773049ac3e53acc734db16"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dfe068bf003b2d869cf02ba2f087fac6","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/ef36f3c4-af19-4354-be86-9d52d2984e0d' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"afc7d95d-3224-4022-8eaf-c88a46cb0898","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616001.7708979} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dfe068bf003b2d869cf02ba2f087fac6","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/fed80ecb-9378-4daf-9291-402032ed1353' 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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"361bbf75-239d-46de-9b2c-f3b271b75a97","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616001.7756436} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"dfe068bf003b2d869cf02ba2f087fac6","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"47d79194-c745-4252-89cb-66b25bb5d005","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616001.7844648} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"08823aac-a04c-436e-b1dd-434c56e03855","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616001.7847095} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"dfe068bf003b2d869cf02ba2f087fac6","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:41.784433818Z"}]},"request_id":"1b887717-d2e4-413d-92d5-5c464a8a2d91","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616001.7886193} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"dfe068bf003b2d869cf02ba2f087fac6","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"dfe068bf003b2d869cf02ba2f087fac6"} gateway-1 | {"time_local":"02/Aug/2024:16:26:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dfe068bf003b2d869cf02ba2f087fac6"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"dfe068bf003b2d869cf02ba2f087fac6","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwMX0.mdDOXqQ_nIu7qWQNEX-igfQkbWZaPxaY70X54M8q7yg","level":"info","message":"auth send jwt","requestID":"d7f77b6d438da6d94e3705cbefe2c725"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d7f77b6d438da6d94e3705cbefe2c725","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d7f77b6d438da6d94e3705cbefe2c725"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1254,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:41Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1254,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.863678,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d7f77b6d438da6d94e3705cbefe2c725","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616001,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwMX0.mdDOXqQ_nIu7qWQNEX-igfQkbWZaPxaY70X54M8q7yg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d7f77b6d438da6d94e3705cbefe2c725","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb3782ae-08d7-49c6-aade-6495772f7e6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d77a6fc7-396e-437d-be83-3dda9ddb5c50","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616001.8187885} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d7f77b6d438da6d94e3705cbefe2c725","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"12646ed4-6902-4095-b2e5-30385b53bf2d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616001.8243039} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"d7f77b6d438da6d94e3705cbefe2c725","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb3782ae-08d7-49c6-aade-6495772f7e6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"6d4f527d-5e9b-4c4d-bbe4-cef4a8e657b9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616001.8357887} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9cd68c4b-600b-44c1-bc6c-54aea175a70a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616001.8359396} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"d7f77b6d438da6d94e3705cbefe2c725","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb3782ae-08d7-49c6-aade-6495772f7e6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb3782ae-08d7-49c6-aade-6495772f7e6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:41.835725691Z"}]},"request_id":"ca3b29bd-ea2d-47dd-8d03-c1f2c36aa1b2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616001.8396688} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d7f77b6d438da6d94e3705cbefe2c725","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d7f77b6d438da6d94e3705cbefe2c725"} gateway-1 | {"time_local":"02/Aug/2024:16:26:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d7f77b6d438da6d94e3705cbefe2c725"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"d7f77b6d438da6d94e3705cbefe2c725","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwMn0._R2LzxZ_A-dCCXrvwsSnj-fnQXOzySuLqNKRtT76VHY","level":"info","message":"auth send jwt","requestID":"0e11fc396fb8734cd243c089a6689c50"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0e11fc396fb8734cd243c089a6689c50","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"0e11fc396fb8734cd243c089a6689c50"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1255,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1255,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.707998,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0e11fc396fb8734cd243c089a6689c50","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616002,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwMn0._R2LzxZ_A-dCCXrvwsSnj-fnQXOzySuLqNKRtT76VHY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0e11fc396fb8734cd243c089a6689c50","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:41.784433818Z"}]},"request_id":"6e874404-1b27-4d89-8dfe-202591dc14f1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616002.3538141} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0e11fc396fb8734cd243c089a6689c50","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9f7af959-2c92-479c-9556-bf81aeee4bd1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616002.359354} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"0e11fc396fb8734cd243c089a6689c50","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:41.784433818Z"}]},"request_id":"0db937ae-47c7-48d1-9f02-d20bf848d1e5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616002.371193} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0e11fc396fb8734cd243c089a6689c50","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"0e11fc396fb8734cd243c089a6689c50"} device-1 | {"level":"info","message":"PATCH /devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab 200 29ms","method":"PATCH","requestID":"0e11fc396fb8734cd243c089a6689c50","responseTime":29,"status":200,"url":"/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab"} gateway-1 | {"time_local":"02/Aug/2024:16:26:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.035","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"0e11fc396fb8734cd243c089a6689c50"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwMn0._R2LzxZ_A-dCCXrvwsSnj-fnQXOzySuLqNKRtT76VHY","level":"info","message":"auth send jwt","requestID":"e699b0553c19879d6e842500170b8794"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e699b0553c19879d6e842500170b8794","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e699b0553c19879d6e842500170b8794"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1256,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:42Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1256,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.746373,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e699b0553c19879d6e842500170b8794","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616002,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwMn0._R2LzxZ_A-dCCXrvwsSnj-fnQXOzySuLqNKRtT76VHY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e699b0553c19879d6e842500170b8794","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e699b0553c19879d6e842500170b8794"} device-1 | {"level":"info","message":"POST /devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab/websocket 200 20ms","method":"POST","requestID":"e699b0553c19879d6e842500170b8794","responseTime":20,"status":200,"url":"/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:26:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"e699b0553c19879d6e842500170b8794"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0a3049a3ba276b2faec1fb80289a34ab","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":"0a3049a3ba276b2faec1fb80289a34ab","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/eb3782ae-08d7-49c6-aade-6495772f7e6c/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":"0a3049a3ba276b2faec1fb80289a34ab"} device-1 | {"level":"info","message":"OPTIONS /devices/eb3782ae-08d7-49c6-aade-6495772f7e6c/websocket 200 2ms","method":"OPTIONS","requestID":"0a3049a3ba276b2faec1fb80289a34ab","responseTime":2,"status":200,"url":"/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwM30.DjnEacmlV-jt7ILyRYa9J5Dda293U7QVhpVYO1hx5lk","level":"info","message":"auth send jwt","requestID":"f1f1a10c2a661991465ca8cd2c0fa407"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f1f1a10c2a661991465ca8cd2c0fa407","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f1f1a10c2a661991465ca8cd2c0fa407"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1257,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1257,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.289518,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f1f1a10c2a661991465ca8cd2c0fa407","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616003,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwM30.DjnEacmlV-jt7ILyRYa9J5Dda293U7QVhpVYO1hx5lk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f1f1a10c2a661991465ca8cd2c0fa407","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f1f1a10c2a661991465ca8cd2c0fa407"} gateway-1 | {"time_local":"02/Aug/2024:16:26:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/eb3782ae-08d7-49c6-aade-6495772f7e6c/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":"f1f1a10c2a661991465ca8cd2c0fa407"} device-1 | {"level":"info","message":"POST /devices/eb3782ae-08d7-49c6-aade-6495772f7e6c/websocket 200 28ms","method":"POST","requestID":"f1f1a10c2a661991465ca8cd2c0fa407","responseTime":28,"status":200,"url":"/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8b1779041adddc3e88f199eededcf008","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":"8b1779041adddc3e88f199eededcf008","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/eb3782ae-08d7-49c6-aade-6495772f7e6c? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"8b1779041adddc3e88f199eededcf008"} device-1 | {"level":"info","message":"OPTIONS /devices/eb3782ae-08d7-49c6-aade-6495772f7e6c? 200 1ms","method":"OPTIONS","requestID":"8b1779041adddc3e88f199eededcf008","responseTime":1,"status":200,"url":"/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwM30.DjnEacmlV-jt7ILyRYa9J5Dda293U7QVhpVYO1hx5lk","level":"info","message":"auth send jwt","requestID":"3ff6724f8b8e8642139f598effacfb38"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3ff6724f8b8e8642139f598effacfb38","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"3ff6724f8b8e8642139f598effacfb38"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1258,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:43Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1258,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.216229,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"3ff6724f8b8e8642139f598effacfb38","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616003,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwM30.DjnEacmlV-jt7ILyRYa9J5Dda293U7QVhpVYO1hx5lk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3ff6724f8b8e8642139f598effacfb38","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb3782ae-08d7-49c6-aade-6495772f7e6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb3782ae-08d7-49c6-aade-6495772f7e6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:41.835725691Z"}]},"request_id":"4a0c1d96-f4a6-4e9e-a1ac-127336c96abf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616003.9804168} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3ff6724f8b8e8642139f598effacfb38","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6e7b01d2-ae1a-476a-a1d5-4ab3fa08eb8c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616003.9876702} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"3ff6724f8b8e8642139f598effacfb38","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb3782ae-08d7-49c6-aade-6495772f7e6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb3782ae-08d7-49c6-aade-6495772f7e6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:41.835725691Z"}]},"request_id":"9158fc2a-3389-4117-9a3f-835725ab02f0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616004.0007005} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3ff6724f8b8e8642139f598effacfb38","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"3ff6724f8b8e8642139f598effacfb38"} device-1 | {"level":"info","message":"PATCH /devices/eb3782ae-08d7-49c6-aade-6495772f7e6c? 200 39ms","method":"PATCH","requestID":"3ff6724f8b8e8642139f598effacfb38","responseTime":39,"status":200,"url":"/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/eb3782ae-08d7-49c6-aade-6495772f7e6c? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.046","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":"3ff6724f8b8e8642139f598effacfb38"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNH0.tPZ3vVbUE3W0tYNuAWQX8eMZdDOXZ1Sv_K1MllfON0M","level":"info","message":"auth send jwt","requestID":"578a7dcfc52662ade23299f161177cb7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"578a7dcfc52662ade23299f161177cb7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"578a7dcfc52662ade23299f161177cb7"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1259,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1259,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.162706,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"578a7dcfc52662ade23299f161177cb7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616004,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNH0.tPZ3vVbUE3W0tYNuAWQX8eMZdDOXZ1Sv_K1MllfON0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"578a7dcfc52662ade23299f161177cb7","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:41.784433818Z"}]},"request_id":"c2775024-103d-4b1c-b2b1-c94af23d0681","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616004.0294993} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"578a7dcfc52662ade23299f161177cb7","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"578a7dcfc52662ade23299f161177cb7"} gateway-1 | {"time_local":"02/Aug/2024:16:26:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"578a7dcfc52662ade23299f161177cb7"} device-1 | {"level":"info","message":"GET /devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab? 200 17ms","method":"GET","requestID":"578a7dcfc52662ade23299f161177cb7","responseTime":17,"status":200,"url":"/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNH0.tPZ3vVbUE3W0tYNuAWQX8eMZdDOXZ1Sv_K1MllfON0M","level":"info","message":"auth send jwt","requestID":"a1b548240a68ee412988d89fafeb2788"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a1b548240a68ee412988d89fafeb2788","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a1b548240a68ee412988d89fafeb2788"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1260,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1260,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.257367,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a1b548240a68ee412988d89fafeb2788","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616004,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNH0.tPZ3vVbUE3W0tYNuAWQX8eMZdDOXZ1Sv_K1MllfON0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a1b548240a68ee412988d89fafeb2788","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb3782ae-08d7-49c6-aade-6495772f7e6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb3782ae-08d7-49c6-aade-6495772f7e6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:41.835725691Z"}]},"request_id":"c7650623-603a-427f-91ee-40e627b2f37b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616004.055042} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a1b548240a68ee412988d89fafeb2788","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a1b548240a68ee412988d89fafeb2788"} gateway-1 | {"time_local":"02/Aug/2024:16:26:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/eb3782ae-08d7-49c6-aade-6495772f7e6c? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a1b548240a68ee412988d89fafeb2788"} device-1 | {"level":"info","message":"GET /devices/eb3782ae-08d7-49c6-aade-6495772f7e6c? 200 18ms","method":"GET","requestID":"a1b548240a68ee412988d89fafeb2788","responseTime":18,"status":200,"url":"/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNH0.tPZ3vVbUE3W0tYNuAWQX8eMZdDOXZ1Sv_K1MllfON0M","level":"info","message":"auth send jwt","requestID":"6a55b84b90295c14bfa69d2dbeea75ad"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6a55b84b90295c14bfa69d2dbeea75ad","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"6a55b84b90295c14bfa69d2dbeea75ad"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1261,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1261,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.251474,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"6a55b84b90295c14bfa69d2dbeea75ad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616004,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNH0.tPZ3vVbUE3W0tYNuAWQX8eMZdDOXZ1Sv_K1MllfON0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6a55b84b90295c14bfa69d2dbeea75ad","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2"},"level":"info","message":"Attempting to run experiment","requestID":"6a55b84b90295c14bfa69d2dbeea75ad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2"},"level":"info","message":"Attempting to book experiment","requestID":"6a55b84b90295c14bfa69d2dbeea75ad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2"},"level":"info","message":"Successfully booked experiment","requestID":"6a55b84b90295c14bfa69d2dbeea75ad"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"019969f0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0199b810-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1262,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1262,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.119855,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"019969f0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616004,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNH0.tPZ3vVbUE3W0tYNuAWQX8eMZdDOXZ1Sv_K1MllfON0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"019969f0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57046","level":"info","msg":"Received request.","req_id":1263,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"client_addr":"127.0.0.1:57046","level":"info","msg":"Sent response.","req_id":1263,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.838104,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0199b810-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616004,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNH0.tPZ3vVbUE3W0tYNuAWQX8eMZdDOXZ1Sv_K1MllfON0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"0199b810-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:41.784433818Z"}]},"request_id":"289fff0e-5039-48c5-8184-e03710cee910","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616004.1231475} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"019969f0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb3782ae-08d7-49c6-aade-6495772f7e6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb3782ae-08d7-49c6-aade-6495772f7e6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:41.835725691Z"}]},"request_id":"72da9a76-a88d-4070-a706-1206aaa7b992","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616004.1284065} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0199b810-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"019969f0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab? 200 19ms","method":"GET","requestID":"019969f0-50ec-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0199b810-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/eb3782ae-08d7-49c6-aade-6495772f7e6c? 200 20ms","method":"GET","requestID":"0199b810-50ec-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2"},"level":"info","message":"Setting up experiment","requestID":"6a55b84b90295c14bfa69d2dbeea75ad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"6a55b84b90295c14bfa69d2dbeea75ad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2"},"level":"info","message":"Successfully locked booking for experiment","requestID":"6a55b84b90295c14bfa69d2dbeea75ad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"6a55b84b90295c14bfa69d2dbeea75ad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"6a55b84b90295c14bfa69d2dbeea75ad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2"},"level":"info","message":"Attempting to update booking for experiment","requestID":"6a55b84b90295c14bfa69d2dbeea75ad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2"},"level":"info","message":"Successfully updated booking for experiment","requestID":"6a55b84b90295c14bfa69d2dbeea75ad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2"},"level":"info","message":"Successfully set up experiment","requestID":"6a55b84b90295c14bfa69d2dbeea75ad"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"01a41850-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"01a46670-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01a48d80-50ec-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2"},"level":"info","message":"Successfully running experiment","requestID":"6a55b84b90295c14bfa69d2dbeea75ad"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1264,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1264,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.135152,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"01a41850-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616004,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNH0.tPZ3vVbUE3W0tYNuAWQX8eMZdDOXZ1Sv_K1MllfON0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"01a41850-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57046","level":"info","msg":"Received request.","req_id":1265,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"client_addr":"127.0.0.1:57046","level":"info","msg":"Sent response.","req_id":1265,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.686876,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"01a46670-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616004,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNH0.tPZ3vVbUE3W0tYNuAWQX8eMZdDOXZ1Sv_K1MllfON0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"01a46670-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57058","level":"info","msg":"Received request.","req_id":1266,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"client_addr":"127.0.0.1:57058","level":"info","msg":"Sent response.","req_id":1266,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.452819,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:41.784433818Z"}]},"request_id":"0ee43d23-3cbd-468b-81bd-09ba22b73253","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616004.1966388} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0be75c68-c04a-464e-bd64-b7bf3f7fd288","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616004.1968} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"01a41850-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"01a48d80-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","object_type":"device","rebac_allow":false,"scope_allow":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":"01a48d80-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb3782ae-08d7-49c6-aade-6495772f7e6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb3782ae-08d7-49c6-aade-6495772f7e6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:41.835725691Z"}]},"request_id":"1a1e80ea-0cef-4426-af11-fe9d9047dbd5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616004.197795} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"01a46670-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01a48d80-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab/signaling 200 21ms","method":"POST","requestID":"01a48d80-50ec-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"01a41850-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab? 200 24ms","method":"GET","requestID":"01a41850-50ec-11ef-8434-2f6d198c7397","responseTime":24,"status":200,"url":"/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"01a46670-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/eb3782ae-08d7-49c6-aade-6495772f7e6c? 200 23ms","method":"GET","requestID":"01a46670-50ec-11ef-8434-2f6d198c7397","responseTime":23,"status":200,"url":"/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01a80ff0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01a83700-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F210b4142-dc0b-4510-bb3d-ef06610a7be2#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F210b4142-dc0b-4510-bb3d-ef06610a7be2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"0c1805c4-5b39-4d00-a388-cceea2691be7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616004.209356} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a100817a-c224-4382-b233-e4c392270cdb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616004.2095344} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"6a55b84b90295c14bfa69d2dbeea75ad","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb3782ae-08d7-49c6-aade-6495772f7e6c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"baf345ea-b118-4885-8244-6dbc45e09260","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616004.211736} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1267,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"client_addr":"127.0.0.1:57046","level":"info","msg":"Received request.","req_id":1268,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1267,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.268568,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"01a80ff0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c","object_type":"device","rebac_allow":false,"scope_allow":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":"01a80ff0-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"77ad3caa-f2a0-470a-84b7-bbb62d489e85","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616004.2134655} authorization-1 | {"client_addr":"127.0.0.1:57046","level":"info","msg":"Sent response.","req_id":1268,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.492382,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"01a83700-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","object_type":"device","rebac_allow":false,"scope_allow":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":"01a83700-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"6a55b84b90295c14bfa69d2dbeea75ad"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01a80ff0-50ec-11ef-8434-2f6d198c7397"} gateway-1 | {"time_local":"02/Aug/2024:16:26:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.155","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6a55b84b90295c14bfa69d2dbeea75ad"} experiment-1 | {"level":"info","message":"POST /experiments? 201 149ms","method":"POST","requestID":"6a55b84b90295c14bfa69d2dbeea75ad","responseTime":149,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"POST /devices/eb3782ae-08d7-49c6-aade-6495772f7e6c/signaling 200 11ms","method":"POST","requestID":"01a80ff0-50ec-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01a83700-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab/signaling 200 11ms","method":"POST","requestID":"01a83700-50ec-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01aa32d0-50ec-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNH0.tPZ3vVbUE3W0tYNuAWQX8eMZdDOXZ1Sv_K1MllfON0M","level":"info","message":"auth send jwt","requestID":"54beb6c19904ad886fa6087eb3d171b6"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"54beb6c19904ad886fa6087eb3d171b6","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"54beb6c19904ad886fa6087eb3d171b6"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1269,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"client_addr":"127.0.0.1:57046","level":"info","msg":"Received request.","req_id":1270,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb3782ae-08d7-49c6-aade-6495772f7e6c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"16c70feb-8fdc-49d7-84a0-8957d9d49d92","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616004.2258685} authorization-1 | {"client_addr":"127.0.0.1:57046","level":"info","msg":"Sent response.","req_id":1270,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.719339,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"54beb6c19904ad886fa6087eb3d171b6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616004,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNH0.tPZ3vVbUE3W0tYNuAWQX8eMZdDOXZ1Sv_K1MllfON0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"54beb6c19904ad886fa6087eb3d171b6","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1269,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.144844,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"01aa32d0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c","object_type":"device","rebac_allow":false,"scope_allow":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":"01aa32d0-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01aa32d0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:41.784433818Z"}]},"request_id":"286e190c-8d40-49cd-a491-ad9c470aed30","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616004.230312} device-1 | {"level":"info","message":"POST /devices/eb3782ae-08d7-49c6-aade-6495772f7e6c/signaling 200 9ms","method":"POST","requestID":"01aa32d0-50ec-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"54beb6c19904ad886fa6087eb3d171b6","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"6a55b84b90295c14bfa69d2dbeea75ad"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"01ac0790-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"01ac2ea0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1271,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1271,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.675472,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"client_addr":"127.0.0.1:57046","level":"info","msg":"Received request.","req_id":1272,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"01ac0790-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616004,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNH0.tPZ3vVbUE3W0tYNuAWQX8eMZdDOXZ1Sv_K1MllfON0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"01ac0790-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"54beb6c19904ad886fa6087eb3d171b6"} authorization-1 | {"client_addr":"127.0.0.1:57046","level":"info","msg":"Sent response.","req_id":1272,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.682048,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:44Z"} gateway-1 | {"time_local":"02/Aug/2024:16:26:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"54beb6c19904ad886fa6087eb3d171b6"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"01ac2ea0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616004,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNH0.tPZ3vVbUE3W0tYNuAWQX8eMZdDOXZ1Sv_K1MllfON0M"} device-1 | {"level":"info","message":"GET /devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab? 200 15ms","method":"GET","requestID":"54beb6c19904ad886fa6087eb3d171b6","responseTime":15,"status":200,"url":"/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab?"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"01ac2ea0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNH0.tPZ3vVbUE3W0tYNuAWQX8eMZdDOXZ1Sv_K1MllfON0M","level":"info","message":"auth send jwt","requestID":"bce65955d106f27a69a4d400e21c5b7c"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"bce65955d106f27a69a4d400e21c5b7c","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bce65955d106f27a69a4d400e21c5b7c"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:41.784433818Z"}]},"request_id":"3a5fc0d7-80b8-4fe9-83e8-7740b2869b88","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616004.2426617} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"01ac0790-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb3782ae-08d7-49c6-aade-6495772f7e6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb3782ae-08d7-49c6-aade-6495772f7e6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:41.835725691Z"}]},"request_id":"e892ca46-4a54-4fb0-ae94-faa48b968df8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616004.2440689} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"01ac2ea0-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1273,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1273,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.624537,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"bce65955d106f27a69a4d400e21c5b7c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616004,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNH0.tPZ3vVbUE3W0tYNuAWQX8eMZdDOXZ1Sv_K1MllfON0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"bce65955d106f27a69a4d400e21c5b7c","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb3782ae-08d7-49c6-aade-6495772f7e6c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb3782ae-08d7-49c6-aade-6495772f7e6c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:41.835725691Z"}]},"request_id":"0ea90d45-65e1-4c2b-805d-a33ed3f22991","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616004.2500575} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"01ac0790-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"bce65955d106f27a69a4d400e21c5b7c","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab? 200 18ms","method":"GET","requestID":"01ac0790-50ec-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"01ac2ea0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/eb3782ae-08d7-49c6-aade-6495772f7e6c? 200 17ms","method":"GET","requestID":"01ac2ea0-50ec-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2"},"level":"info","message":"Building connection plan","requestID":"6a55b84b90295c14bfa69d2dbeea75ad"} 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":"adf4b902-d955-4562-be63-36792ef88581"},{"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":"7ec7e870-1937-422a-b625-045178216d5a"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"c4ce31c5-35d9-4776-b74e-8204ff56ac70"}]},"level":"info","message":"Built pairwise service configurations","requestID":"6a55b84b90295c14bfa69d2dbeea75ad"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"6a55b84b90295c14bfa69d2dbeea75ad"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"01af3be0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bce65955d106f27a69a4d400e21c5b7c"} gateway-1 | {"time_local":"02/Aug/2024:16:26:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/eb3782ae-08d7-49c6-aade-6495772f7e6c? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bce65955d106f27a69a4d400e21c5b7c"} device-1 | {"level":"info","message":"GET /devices/eb3782ae-08d7-49c6-aade-6495772f7e6c? 200 13ms","method":"GET","requestID":"bce65955d106f27a69a4d400e21c5b7c","responseTime":13,"status":200,"url":"/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1274,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1274,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.258868,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"01af3be0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616004,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNH0.tPZ3vVbUE3W0tYNuAWQX8eMZdDOXZ1Sv_K1MllfON0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"01af3be0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"a6c32378-4db1-49be-b1c7-2ed7d50010b0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616004.2656898} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1c729f70-81a9-4d51-9fee-f0be0108c82d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616004.2658799} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"01af3be0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"01af3be0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"01af3be0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f2ee8f71-1b1e-48fd-becb-8869bd35eb3b'","requestID":"01af3be0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f2ee8f71-1b1e-48fd-becb-8869bd35eb3b'","requestID":"01af3be0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"01af3be0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"01af3be0-50ec-11ef-8434-2f6d198c7397","responseTime":25,"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":"01af3be0-50ec-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"6a55b84b90295c14bfa69d2dbeea75ad"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01b70410-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1275,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d118fead-3ff1-4d28-96d9-c4c6708e6b3d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616004.3090985} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1275,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.557924,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"01b70410-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","object_type":"device","rebac_allow":false,"scope_allow":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":"01b70410-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01b70410-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab/signaling 200 7ms","method":"POST","requestID":"01b70410-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01b863a0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1276,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb3782ae-08d7-49c6-aade-6495772f7e6c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"909bda06-8689-4c8f-9deb-69cb7876df26","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616004.3186283} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1276,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.582296,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"01b863a0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c","object_type":"device","rebac_allow":false,"scope_allow":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":"01b863a0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01b863a0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/eb3782ae-08d7-49c6-aade-6495772f7e6c/signaling 200 9ms","method":"POST","requestID":"01b863a0-50ec-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c/signaling"} device-1 | {"device":"eb3782ae-08d7-49c6-aade-6495772f7e6c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"eb3782ae-08d7-49c6-aade-6495772f7e6c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"f2ee8f71-1b1e-48fd-becb-8869bd35eb3b","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 1945543950744106862 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=msid-semantic: WMS\r\nm=application 9 DTLS/SCTP 5000\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:m4Rf\r\na=ice-pwd:YAraORcuzq+gfn1RY0yuT4FN\r\na=ice-options:trickle\r\na=fingerprint:sha-256 CE:27:97:09:68:B1:D1:81:11:44:16:C1:CD:D5:AC:0A:BE:E9:DF:CA:05:8A:F2:F3:83:86:35:03:FA:D3:E6:B9\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"eb3782ae-08d7-49c6-aade-6495772f7e6c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2939914581 1 udp 2113937151 8d8f7c77-c623-488e-bd38-e82b4f474bc7.local 54695 typ host generation 0 ufrag m4Rf network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"eb3782ae-08d7-49c6-aade-6495772f7e6c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"eb3782ae-08d7-49c6-aade-6495772f7e6c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:2808332946 1 udp 1677729535 141.24.211.56 54695 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag m4Rf network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"eb3782ae-08d7-49c6-aade-6495772f7e6c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c'"} device-1 | {"device":"eb3782ae-08d7-49c6-aade-6495772f7e6c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f2ee8f71-1b1e-48fd-becb-8869bd35eb3b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f2ee8f71-1b1e-48fd-becb-8869bd35eb3b","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fc0cc17d116f260401ce99d61c10d185","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":"fc0cc17d116f260401ce99d61c10d185","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/f2ee8f71-1b1e-48fd-becb-8869bd35eb3b"}}},"level":"info","message":"received a callback","requestID":"fc0cc17d116f260401ce99d61c10d185"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"fc0cc17d116f260401ce99d61c10d185","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:46 +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":"fc0cc17d116f260401ce99d61c10d185"} device-1 | {"data":{"peerconnection":"f2ee8f71-1b1e-48fd-becb-8869bd35eb3b","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"eb3782ae-08d7-49c6-aade-6495772f7e6c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"f2ee8f71-1b1e-48fd-becb-8869bd35eb3b","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"eb3782ae-08d7-49c6-aade-6495772f7e6c","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f2ee8f71-1b1e-48fd-becb-8869bd35eb3b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f2ee8f71-1b1e-48fd-becb-8869bd35eb3b","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4da0ba3bb04766ce006d9da12fac4e50","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":"4da0ba3bb04766ce006d9da12fac4e50","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/f2ee8f71-1b1e-48fd-becb-8869bd35eb3b"}}},"level":"info","message":"received a callback","requestID":"4da0ba3bb04766ce006d9da12fac4e50"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"02ff6290-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1277,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:46Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff2ee8f71-1b1e-48fd-becb-8869bd35eb3b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d7f2a571-c02d-42d3-b445-ce4353c65e9b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616006.4638877} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1277,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.270163,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f2ee8f71-1b1e-48fd-becb-8869bd35eb3b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"02ff6290-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f2ee8f71-1b1e-48fd-becb-8869bd35eb3b","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":"02ff6290-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"02ff6290-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/f2ee8f71-1b1e-48fd-becb-8869bd35eb3b 200 13ms","method":"GET","requestID":"02ff6290-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/peerconnections/f2ee8f71-1b1e-48fd-becb-8869bd35eb3b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 42ms","method":"POST","requestID":"4da0ba3bb04766ce006d9da12fac4e50","responseTime":42,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:46 +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":"4da0ba3bb04766ce006d9da12fac4e50"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0304b9c0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1278,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:46Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb3782ae-08d7-49c6-aade-6495772f7e6c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5d4a966b-f92a-4a96-837f-74a72819b2cd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616006.4990168} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1278,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.972524,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0304b9c0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c","object_type":"device","rebac_allow":false,"scope_allow":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":"0304b9c0-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0304b9c0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/eb3782ae-08d7-49c6-aade-6495772f7e6c/signaling 200 14ms","method":"POST","requestID":"0304b9c0-50ec-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"030751d0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1279,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:46Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f4f74ffa-231c-40fe-92e5-366512502e43","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616006.5166686} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1279,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.937991,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"030751d0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","object_type":"device","rebac_allow":false,"scope_allow":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":"030751d0-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"030751d0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab/signaling 200 15ms","method":"POST","requestID":"030751d0-50ec-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNn0.v0qO7EjfEwAVfe3zYF87i8ghXA7ST3xLbJxBeHHtFYA","level":"info","message":"auth send jwt","requestID":"eaeb87926efe8a3d5c218fd0491c7a31"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"eaeb87926efe8a3d5c218fd0491c7a31","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2","requestID":"eaeb87926efe8a3d5c218fd0491c7a31"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1280,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1280,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.27108,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"eaeb87926efe8a3d5c218fd0491c7a31","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616006,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNn0.v0qO7EjfEwAVfe3zYF87i8ghXA7ST3xLbJxBeHHtFYA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"eaeb87926efe8a3d5c218fd0491c7a31","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2","requestID":"eaeb87926efe8a3d5c218fd0491c7a31"} gateway-1 | {"time_local":"02/Aug/2024:16:26:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2 HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"eaeb87926efe8a3d5c218fd0491c7a31"} experiment-1 | {"level":"info","message":"GET /experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2 200 15ms","method":"GET","requestID":"eaeb87926efe8a3d5c218fd0491c7a31","responseTime":15,"status":200,"url":"/experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNn0.v0qO7EjfEwAVfe3zYF87i8ghXA7ST3xLbJxBeHHtFYA","level":"info","message":"auth send jwt","requestID":"4cef9a51d778018d84196c08f989cf44"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4cef9a51d778018d84196c08f989cf44","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2","requestID":"4cef9a51d778018d84196c08f989cf44"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1281,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1281,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.182692,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:46Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"4cef9a51d778018d84196c08f989cf44","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616006,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNn0.v0qO7EjfEwAVfe3zYF87i8ghXA7ST3xLbJxBeHHtFYA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4cef9a51d778018d84196c08f989cf44","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2"},"level":"info","message":"Attempting to finish experiment","requestID":"4cef9a51d778018d84196c08f989cf44"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"03135fc0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1282,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1282,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.129019,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:46Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f2ee8f71-1b1e-48fd-becb-8869bd35eb3b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"03135fc0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/f2ee8f71-1b1e-48fd-becb-8869bd35eb3b","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616006,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNn0.v0qO7EjfEwAVfe3zYF87i8ghXA7ST3xLbJxBeHHtFYA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"03135fc0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f2ee8f71-1b1e-48fd-becb-8869bd35eb3b","device":"eb3782ae-08d7-49c6-aade-6495772f7e6c","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f2ee8f71-1b1e-48fd-becb-8869bd35eb3b' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f2ee8f71-1b1e-48fd-becb-8869bd35eb3b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f2ee8f71-1b1e-48fd-becb-8869bd35eb3b","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff2ee8f71-1b1e-48fd-becb-8869bd35eb3b': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff2ee8f71-1b1e-48fd-becb-8869bd35eb3b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"500a30cb-d5ba-4cba-a990-c3b27bc7950f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616006.6153338} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a383460b-6d9c-4300-b27e-0079556fd772","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616006.6158235} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"03135fc0-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"88bfe5723c744fb782ba2e0be4e6f8a8","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":"88bfe5723c744fb782ba2e0be4e6f8a8","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ce7f3ec3a7a9c9b8b2fac77fa755d080","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f2ee8f71-1b1e-48fd-becb-8869bd35eb3b"}}},"level":"info","message":"received a callback","requestID":"88bfe5723c744fb782ba2e0be4e6f8a8"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ce7f3ec3a7a9c9b8b2fac77fa755d080","responseTime":2,"status":200,"url":"/auth"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f2ee8f71-1b1e-48fd-becb-8869bd35eb3b"}}},"level":"info","message":"received a callback","requestID":"ce7f3ec3a7a9c9b8b2fac77fa755d080"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"03135fc0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/f2ee8f71-1b1e-48fd-becb-8869bd35eb3b 204 54ms","method":"DELETE","requestID":"03135fc0-50ec-11ef-8434-2f6d198c7397","responseTime":54,"status":204,"url":"/peerconnections/f2ee8f71-1b1e-48fd-becb-8869bd35eb3b"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2"},"level":"info","message":"Successfully finished experiment","requestID":"4cef9a51d778018d84196c08f989cf44"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"031ef880-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1283,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:46Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Feb3782ae-08d7-49c6-aade-6495772f7e6c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"220801bd-99ab-4f4e-bfd6-554fca35e271","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616006.6699} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1283,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.600128,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"031ef880-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c","object_type":"device","rebac_allow":false,"scope_allow":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":"031ef880-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"031ef880-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/eb3782ae-08d7-49c6-aade-6495772f7e6c/signaling 200 12ms","method":"POST","requestID":"031ef880-50ec-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/eb3782ae-08d7-49c6-aade-6495772f7e6c/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F210b4142-dc0b-4510-bb3d-ef06610a7be2': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F210b4142-dc0b-4510-bb3d-ef06610a7be2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"ac06b013-720f-466b-b466-708d0a19316d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616006.677749} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"716115d9-2ba1-4b81-af34-2acc66648d6d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616006.678062} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"03216980-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"4cef9a51d778018d84196c08f989cf44","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1284,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:46Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1ef3db59-35a7-42cf-9b4b-9c65cdea5d4a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616006.686899} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1284,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.316993,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"03216980-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab","object_type":"device","rebac_allow":false,"scope_allow":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":"03216980-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"03216980-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab/signaling 200 13ms","method":"POST","requestID":"03216980-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2","requestID":"4cef9a51d778018d84196c08f989cf44"} gateway-1 | {"time_local":"02/Aug/2024:16:26:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.179","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4cef9a51d778018d84196c08f989cf44"} gateway-1 | {"time_local":"02/Aug/2024:16:26:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3233","request_time":"4.347","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"5d38316125fdc09fb80b493025922a01"} experiment-1 | {"level":"info","message":"DELETE /experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2 204 176ms","method":"DELETE","requestID":"4cef9a51d778018d84196c08f989cf44","responseTime":176,"status":204,"url":"/experiments/210b4142-dc0b-4510-bb3d-ef06610a7be2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"88bfe5723c744fb782ba2e0be4e6f8a8","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:46 +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":"88bfe5723c744fb782ba2e0be4e6f8a8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"ce7f3ec3a7a9c9b8b2fac77fa755d080","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:46 +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.137","http_referrer":"","http_user_agent":"node-fetch","requestID":"ce7f3ec3a7a9c9b8b2fac77fa755d080"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNn0.v0qO7EjfEwAVfe3zYF87i8ghXA7ST3xLbJxBeHHtFYA","level":"info","message":"auth send jwt","requestID":"91e6ecd1a6581d6a5ceaaaf4ffac4f9b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"91e6ecd1a6581d6a5ceaaaf4ffac4f9b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"91e6ecd1a6581d6a5ceaaaf4ffac4f9b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1285,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1285,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.974099,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"91e6ecd1a6581d6a5ceaaaf4ffac4f9b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616006,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNn0.v0qO7EjfEwAVfe3zYF87i8ghXA7ST3xLbJxBeHHtFYA"} gateway-1 | {"time_local":"02/Aug/2024:16:26:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3092","request_time":"2.843","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":"af41cdcb4b54b0ae4d1ed921fa8e6d29"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"91e6ecd1a6581d6a5ceaaaf4ffac4f9b","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/c246a3ba-4cb1-4a40-a4a1-88ed5649c8ab' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd406ef1f-cc28-4464-a0e2-3677b3bf2254","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a9268242-6cc2-42ad-ad20-26e6c876f0d6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616006.775053} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"91e6ecd1a6581d6a5ceaaaf4ffac4f9b","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/eb3782ae-08d7-49c6-aade-6495772f7e6c' 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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d81e8a67-8944-46cb-bfac-b5fa900d283f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616006.7801638} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"91e6ecd1a6581d6a5ceaaaf4ffac4f9b","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd406ef1f-cc28-4464-a0e2-3677b3bf2254","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"64541bc2-a7ab-4fc3-96e5-79a868bd63b0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616006.7894456} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e1c386c2-f3c6-46de-be2c-e53f42e532e4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616006.7895937} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"91e6ecd1a6581d6a5ceaaaf4ffac4f9b","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd406ef1f-cc28-4464-a0e2-3677b3bf2254","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd406ef1f-cc28-4464-a0e2-3677b3bf2254","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:46.789172863Z"}]},"request_id":"1fda8010-26a3-45b7-8c54-94bcefc59045","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616006.7942512} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"91e6ecd1a6581d6a5ceaaaf4ffac4f9b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"91e6ecd1a6581d6a5ceaaaf4ffac4f9b"} gateway-1 | {"time_local":"02/Aug/2024:16:26:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"91e6ecd1a6581d6a5ceaaaf4ffac4f9b"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"91e6ecd1a6581d6a5ceaaaf4ffac4f9b","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNn0.v0qO7EjfEwAVfe3zYF87i8ghXA7ST3xLbJxBeHHtFYA","level":"info","message":"auth send jwt","requestID":"e8b8fc8bb5054be88a122bb1db348861"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e8b8fc8bb5054be88a122bb1db348861","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e8b8fc8bb5054be88a122bb1db348861"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1286,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:46Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1286,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.721209,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e8b8fc8bb5054be88a122bb1db348861","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616006,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwNn0.v0qO7EjfEwAVfe3zYF87i8ghXA7ST3xLbJxBeHHtFYA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e8b8fc8bb5054be88a122bb1db348861","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc5034941-62fd-40ce-b783-0d452b2bcd11","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ca094e8c-ab2b-4c34-b56e-f90f3cf23fa8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616006.824533} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e8b8fc8bb5054be88a122bb1db348861","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"47484cad-b43e-42bf-8141-c1f960c39801","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616006.8291388} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e8b8fc8bb5054be88a122bb1db348861","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc5034941-62fd-40ce-b783-0d452b2bcd11","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"6c4665f1-e917-4f0d-801f-04f4e10f5d8e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616006.839227} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"598dab6e-dce9-47f8-b38c-a579b6a7a4ad","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616006.839267} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"e8b8fc8bb5054be88a122bb1db348861","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc5034941-62fd-40ce-b783-0d452b2bcd11","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc5034941-62fd-40ce-b783-0d452b2bcd11","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:46.839176954Z"}]},"request_id":"9c3ab50e-2103-4c80-af94-bef3ec02df74","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616006.8432624} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e8b8fc8bb5054be88a122bb1db348861","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e8b8fc8bb5054be88a122bb1db348861"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"e8b8fc8bb5054be88a122bb1db348861","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e8b8fc8bb5054be88a122bb1db348861"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwN30.mzEyhkB2foDf7LWbGQM35EnYW7rxLJHejkKsUAsDcr0","level":"info","message":"auth send jwt","requestID":"70dd6f8a49f485995db1652c7d986a10"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"70dd6f8a49f485995db1652c7d986a10","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"70dd6f8a49f485995db1652c7d986a10"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1287,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:47Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1287,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.033339,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"70dd6f8a49f485995db1652c7d986a10","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616007,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwN30.mzEyhkB2foDf7LWbGQM35EnYW7rxLJHejkKsUAsDcr0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"70dd6f8a49f485995db1652c7d986a10","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd406ef1f-cc28-4464-a0e2-3677b3bf2254","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd406ef1f-cc28-4464-a0e2-3677b3bf2254","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:46.789172863Z"}]},"request_id":"6a686160-78ae-48d8-a116-f39ebb93d957","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616007.3706226} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"70dd6f8a49f485995db1652c7d986a10","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"493e94b4-fbb0-4883-8d38-1ffa9d2a2927","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616007.3780167} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"70dd6f8a49f485995db1652c7d986a10","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd406ef1f-cc28-4464-a0e2-3677b3bf2254","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd406ef1f-cc28-4464-a0e2-3677b3bf2254","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:46.789172863Z"}]},"request_id":"83d6e6f1-f776-4634-a423-d54c0fc3939e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616007.3916883} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"70dd6f8a49f485995db1652c7d986a10","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"70dd6f8a49f485995db1652c7d986a10"} gateway-1 | {"time_local":"02/Aug/2024:16:26:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.043","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"70dd6f8a49f485995db1652c7d986a10"} device-1 | {"level":"info","message":"PATCH /devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254 200 36ms","method":"PATCH","requestID":"70dd6f8a49f485995db1652c7d986a10","responseTime":36,"status":200,"url":"/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwN30.mzEyhkB2foDf7LWbGQM35EnYW7rxLJHejkKsUAsDcr0","level":"info","message":"auth send jwt","requestID":"ffab398c687a840d66fac169b9b8119a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ffab398c687a840d66fac169b9b8119a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ffab398c687a840d66fac169b9b8119a"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1288,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:47Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1288,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.867003,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ffab398c687a840d66fac169b9b8119a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616007,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwN30.mzEyhkB2foDf7LWbGQM35EnYW7rxLJHejkKsUAsDcr0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ffab398c687a840d66fac169b9b8119a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ffab398c687a840d66fac169b9b8119a"} gateway-1 | {"time_local":"02/Aug/2024:16:26:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"ffab398c687a840d66fac169b9b8119a"} device-1 | {"level":"info","message":"POST /devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254/websocket 200 19ms","method":"POST","requestID":"ffab398c687a840d66fac169b9b8119a","responseTime":19,"status":200,"url":"/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"88a52d8800d1f35ca6f93b45f46201b2","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":"88a52d8800d1f35ca6f93b45f46201b2","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/c5034941-62fd-40ce-b783-0d452b2bcd11/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":"88a52d8800d1f35ca6f93b45f46201b2"} device-1 | {"level":"info","message":"OPTIONS /devices/c5034941-62fd-40ce-b783-0d452b2bcd11/websocket 200 1ms","method":"OPTIONS","requestID":"88a52d8800d1f35ca6f93b45f46201b2","responseTime":1,"status":200,"url":"/devices/c5034941-62fd-40ce-b783-0d452b2bcd11/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwOH0.-Uqm1Z_qTILZm4KcPeXk0esD0-SILYQjb_ujpIfQS_U","level":"info","message":"auth send jwt","requestID":"393847277436eefd45287cfdaec1d65d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"393847277436eefd45287cfdaec1d65d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"393847277436eefd45287cfdaec1d65d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1289,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:48Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1289,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.324101,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"393847277436eefd45287cfdaec1d65d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616008,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwOH0.-Uqm1Z_qTILZm4KcPeXk0esD0-SILYQjb_ujpIfQS_U"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"393847277436eefd45287cfdaec1d65d","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"393847277436eefd45287cfdaec1d65d"} device-1 | {"level":"info","message":"POST /devices/c5034941-62fd-40ce-b783-0d452b2bcd11/websocket 200 23ms","method":"POST","requestID":"393847277436eefd45287cfdaec1d65d","responseTime":23,"status":200,"url":"/devices/c5034941-62fd-40ce-b783-0d452b2bcd11/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:26:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c5034941-62fd-40ce-b783-0d452b2bcd11/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":"393847277436eefd45287cfdaec1d65d"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2dafea13b359d5d1a2a2e15c7e062a68","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":"2dafea13b359d5d1a2a2e15c7e062a68","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/c5034941-62fd-40ce-b783-0d452b2bcd11? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"2dafea13b359d5d1a2a2e15c7e062a68"} device-1 | {"level":"info","message":"OPTIONS /devices/c5034941-62fd-40ce-b783-0d452b2bcd11? 200 2ms","method":"OPTIONS","requestID":"2dafea13b359d5d1a2a2e15c7e062a68","responseTime":2,"status":200,"url":"/devices/c5034941-62fd-40ce-b783-0d452b2bcd11?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwOH0.-Uqm1Z_qTILZm4KcPeXk0esD0-SILYQjb_ujpIfQS_U","level":"info","message":"auth send jwt","requestID":"984a3b1037661757a23ba52d14140afa"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"984a3b1037661757a23ba52d14140afa","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"984a3b1037661757a23ba52d14140afa"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1290,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:48Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1290,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.277142,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"984a3b1037661757a23ba52d14140afa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616008,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwOH0.-Uqm1Z_qTILZm4KcPeXk0esD0-SILYQjb_ujpIfQS_U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"984a3b1037661757a23ba52d14140afa","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc5034941-62fd-40ce-b783-0d452b2bcd11","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc5034941-62fd-40ce-b783-0d452b2bcd11","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:46.839176954Z"}]},"request_id":"830952a2-2ac5-4fc0-9c6f-80de629bab5d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616008.9795957} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"984a3b1037661757a23ba52d14140afa","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d644b3e1-6b23-4cba-818b-0fcecf65609d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616008.986739} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"984a3b1037661757a23ba52d14140afa","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc5034941-62fd-40ce-b783-0d452b2bcd11","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc5034941-62fd-40ce-b783-0d452b2bcd11","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:46.839176954Z"}]},"request_id":"5cf3dc25-9359-43e5-a1ac-1b7661d9c78d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616008.998945} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"984a3b1037661757a23ba52d14140afa","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"984a3b1037661757a23ba52d14140afa"} device-1 | {"level":"info","message":"PATCH /devices/c5034941-62fd-40ce-b783-0d452b2bcd11? 200 37ms","method":"PATCH","requestID":"984a3b1037661757a23ba52d14140afa","responseTime":37,"status":200,"url":"/devices/c5034941-62fd-40ce-b783-0d452b2bcd11?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c5034941-62fd-40ce-b783-0d452b2bcd11? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.043","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":"984a3b1037661757a23ba52d14140afa"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwOX0.lPoscvlrqoQx9vd08U6pXM_zrdIpe7O_Z6ybGJLDP_s","level":"info","message":"auth send jwt","requestID":"b30528a52c03eb3dba93e3a109095278"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b30528a52c03eb3dba93e3a109095278","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b30528a52c03eb3dba93e3a109095278"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1291,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1291,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.670705,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b30528a52c03eb3dba93e3a109095278","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616009,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwOX0.lPoscvlrqoQx9vd08U6pXM_zrdIpe7O_Z6ybGJLDP_s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b30528a52c03eb3dba93e3a109095278","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd406ef1f-cc28-4464-a0e2-3677b3bf2254","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd406ef1f-cc28-4464-a0e2-3677b3bf2254","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:46.789172863Z"}]},"request_id":"a9ebe983-115e-48e8-b86f-25ef2766c664","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616009.0263948} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b30528a52c03eb3dba93e3a109095278","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b30528a52c03eb3dba93e3a109095278"} device-1 | {"level":"info","message":"GET /devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254? 200 12ms","method":"GET","requestID":"b30528a52c03eb3dba93e3a109095278","responseTime":12,"status":200,"url":"/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b30528a52c03eb3dba93e3a109095278"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwOX0.lPoscvlrqoQx9vd08U6pXM_zrdIpe7O_Z6ybGJLDP_s","level":"info","message":"auth send jwt","requestID":"f68b91ea50ba9609714dd60b35089490"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f68b91ea50ba9609714dd60b35089490","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f68b91ea50ba9609714dd60b35089490"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1292,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1292,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.221855,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f68b91ea50ba9609714dd60b35089490","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616009,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwOX0.lPoscvlrqoQx9vd08U6pXM_zrdIpe7O_Z6ybGJLDP_s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f68b91ea50ba9609714dd60b35089490","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc5034941-62fd-40ce-b783-0d452b2bcd11","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc5034941-62fd-40ce-b783-0d452b2bcd11","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:46.839176954Z"}]},"request_id":"d7ea3e48-c9c2-4e9b-b544-e22660693e66","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616009.0474484} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f68b91ea50ba9609714dd60b35089490","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f68b91ea50ba9609714dd60b35089490"} device-1 | {"level":"info","message":"GET /devices/c5034941-62fd-40ce-b783-0d452b2bcd11? 200 17ms","method":"GET","requestID":"f68b91ea50ba9609714dd60b35089490","responseTime":17,"status":200,"url":"/devices/c5034941-62fd-40ce-b783-0d452b2bcd11?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c5034941-62fd-40ce-b783-0d452b2bcd11? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f68b91ea50ba9609714dd60b35089490"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwOX0.lPoscvlrqoQx9vd08U6pXM_zrdIpe7O_Z6ybGJLDP_s","level":"info","message":"auth send jwt","requestID":"9cff51387a49196b6732683d03c28572"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9cff51387a49196b6732683d03c28572","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"9cff51387a49196b6732683d03c28572"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1293,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1293,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.2218,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"9cff51387a49196b6732683d03c28572","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616009,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwOX0.lPoscvlrqoQx9vd08U6pXM_zrdIpe7O_Z6ybGJLDP_s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9cff51387a49196b6732683d03c28572","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836"},"level":"info","message":"Attempting to run experiment","requestID":"9cff51387a49196b6732683d03c28572"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836"},"level":"info","message":"Attempting to book experiment","requestID":"9cff51387a49196b6732683d03c28572"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836"},"level":"info","message":"Successfully booked experiment","requestID":"9cff51387a49196b6732683d03c28572"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"049321f0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"04937010-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1294,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1294,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.611938,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"049321f0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616009,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwOX0.lPoscvlrqoQx9vd08U6pXM_zrdIpe7O_Z6ybGJLDP_s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"049321f0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Received request.","req_id":1295,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Sent response.","req_id":1295,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.886729,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"04937010-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616009,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwOX0.lPoscvlrqoQx9vd08U6pXM_zrdIpe7O_Z6ybGJLDP_s"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"04937010-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd406ef1f-cc28-4464-a0e2-3677b3bf2254","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd406ef1f-cc28-4464-a0e2-3677b3bf2254","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:46.789172863Z"}]},"request_id":"dc5f97c9-9c2e-4af3-a634-29ce91302648","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616009.1139808} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"049321f0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc5034941-62fd-40ce-b783-0d452b2bcd11","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc5034941-62fd-40ce-b783-0d452b2bcd11","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:46.839176954Z"}]},"request_id":"8e2d0df6-79f7-4de7-a3ba-919682c91235","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616009.1189501} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"04937010-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"049321f0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254? 200 18ms","method":"GET","requestID":"049321f0-50ec-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"04937010-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/c5034941-62fd-40ce-b783-0d452b2bcd11? 200 20ms","method":"GET","requestID":"04937010-50ec-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/c5034941-62fd-40ce-b783-0d452b2bcd11?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836"},"level":"info","message":"Setting up experiment","requestID":"9cff51387a49196b6732683d03c28572"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"9cff51387a49196b6732683d03c28572"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836"},"level":"info","message":"Successfully locked booking for experiment","requestID":"9cff51387a49196b6732683d03c28572"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"9cff51387a49196b6732683d03c28572"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"9cff51387a49196b6732683d03c28572"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836"},"level":"info","message":"Attempting to update booking for experiment","requestID":"9cff51387a49196b6732683d03c28572"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836"},"level":"info","message":"Successfully updated booking for experiment","requestID":"9cff51387a49196b6732683d03c28572"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836"},"level":"info","message":"Successfully set up experiment","requestID":"9cff51387a49196b6732683d03c28572"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"049e6c90-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"049ebab0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"049f08d0-50ec-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836"},"level":"info","message":"Successfully running experiment","requestID":"9cff51387a49196b6732683d03c28572"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1296,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1296,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.280807,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"049e6c90-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616009,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwOX0.lPoscvlrqoQx9vd08U6pXM_zrdIpe7O_Z6ybGJLDP_s"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"049e6c90-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Received request.","req_id":1297,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Sent response.","req_id":1297,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.103214,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"049ebab0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616009,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwOX0.lPoscvlrqoQx9vd08U6pXM_zrdIpe7O_Z6ybGJLDP_s"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"049ebab0-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57066","level":"info","msg":"Received request.","req_id":1298,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26: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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc5034941-62fd-40ce-b783-0d452b2bcd11","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc5034941-62fd-40ce-b783-0d452b2bcd11","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:46.839176954Z"}]},"request_id":"3b8875ec-8685-4792-aeba-04f7e4a8cc49","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616009.1939883} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"049ebab0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd406ef1f-cc28-4464-a0e2-3677b3bf2254","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd406ef1f-cc28-4464-a0e2-3677b3bf2254","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:46.789172863Z"}]},"request_id":"a2b9eddc-6fe6-4628-be7b-b1617b059a64","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616009.1958237} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"049e6c90-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd406ef1f-cc28-4464-a0e2-3677b3bf2254","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3eb49417-e6c0-4454-b741-f8b2d29c87fd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616009.1972256} authorization-1 | {"client_addr":"127.0.0.1:57066","level":"info","msg":"Sent response.","req_id":1298,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.099718,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"049f08d0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254","object_type":"device","rebac_allow":false,"scope_allow":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":"049f08d0-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"049ebab0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/c5034941-62fd-40ce-b783-0d452b2bcd11? 200 22ms","method":"GET","requestID":"049ebab0-50ec-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/c5034941-62fd-40ce-b783-0d452b2bcd11?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"049e6c90-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254? 200 25ms","method":"GET","requestID":"049e6c90-50ec-11ef-8434-2f6d198c7397","responseTime":25,"status":200,"url":"/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"049f08d0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254/signaling 200 23ms","method":"POST","requestID":"049f08d0-50ec-11ef-8434-2f6d198c7397","responseTime":23,"status":200,"url":"/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"04a2b250-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"04a30070-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffb29ad3a-1f50-4a18-b22d-c611074b8836#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffb29ad3a-1f50-4a18-b22d-c611074b8836","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"f72ac551-2a24-410c-9845-f9d74839532a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616009.2081623} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ac57c30e-aa61-4947-93ec-c705e5b36442","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616009.2085712} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1299,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"9cff51387a49196b6732683d03c28572","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Received request.","req_id":1300,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1299,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.950814,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd406ef1f-cc28-4464-a0e2-3677b3bf2254","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f9345c24-db80-4fe1-b568-48b4b400bb3e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616009.21119} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"04a2b250-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254","object_type":"device","rebac_allow":false,"scope_allow":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":"04a2b250-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"04a2b250-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Sent response.","req_id":1300,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.419232,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc5034941-62fd-40ce-b783-0d452b2bcd11","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9778fb68-8937-4076-803b-6f55d5a8ef5a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616009.2135842} device-1 | {"level":"info","message":"POST /devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254/signaling 200 13ms","method":"POST","requestID":"04a2b250-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254/signaling"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"04a30070-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11","object_type":"device","rebac_allow":false,"scope_allow":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":"04a30070-50ec-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"9cff51387a49196b6732683d03c28572"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"04a52350-50ec-11ef-8434-2f6d198c7397"} gateway-1 | {"time_local":"02/Aug/2024:16:26:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.165","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9cff51387a49196b6732683d03c28572"} experiment-1 | {"level":"info","message":"POST /experiments? 201 159ms","method":"POST","requestID":"9cff51387a49196b6732683d03c28572","responseTime":159,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"04a30070-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1301,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:49Z"} device-1 | {"level":"info","message":"POST /devices/c5034941-62fd-40ce-b783-0d452b2bcd11/signaling 200 17ms","method":"POST","requestID":"04a30070-50ec-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/c5034941-62fd-40ce-b783-0d452b2bcd11/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc5034941-62fd-40ce-b783-0d452b2bcd11","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6e727ca7-9b6f-49f7-9dbc-26d6843cce0e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616009.2261143} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwOX0.lPoscvlrqoQx9vd08U6pXM_zrdIpe7O_Z6ybGJLDP_s","level":"info","message":"auth send jwt","requestID":"31fea9b412767c99edd8c20911d575b7"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1301,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.959378,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:49Z"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"31fea9b412767c99edd8c20911d575b7","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"04a52350-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11","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":"31fea9b412767c99edd8c20911d575b7"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"04a52350-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1302,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1302,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.666665,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:49Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"04a52350-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c5034941-62fd-40ce-b783-0d452b2bcd11/signaling 200 10ms","method":"POST","requestID":"04a52350-50ec-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/c5034941-62fd-40ce-b783-0d452b2bcd11/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"31fea9b412767c99edd8c20911d575b7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616009,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwOX0.lPoscvlrqoQx9vd08U6pXM_zrdIpe7O_Z6ybGJLDP_s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"31fea9b412767c99edd8c20911d575b7","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"9cff51387a49196b6732683d03c28572"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"04a71f20-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"04a74630-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd406ef1f-cc28-4464-a0e2-3677b3bf2254","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd406ef1f-cc28-4464-a0e2-3677b3bf2254","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:46.789172863Z"}]},"request_id":"a2badc82-5509-4a61-a3ed-26894ffe85a4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616009.2356746} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"31fea9b412767c99edd8c20911d575b7","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1303,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1303,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.721937,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"04a71f20-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616009,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwOX0.lPoscvlrqoQx9vd08U6pXM_zrdIpe7O_Z6ybGJLDP_s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"04a71f20-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Received request.","req_id":1304,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Sent response.","req_id":1304,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.65338,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"04a74630-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616009,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwOX0.lPoscvlrqoQx9vd08U6pXM_zrdIpe7O_Z6ybGJLDP_s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"04a74630-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"31fea9b412767c99edd8c20911d575b7"} gateway-1 | {"time_local":"02/Aug/2024:16:26:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"31fea9b412767c99edd8c20911d575b7"} device-1 | {"level":"info","message":"GET /devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254? 200 15ms","method":"GET","requestID":"31fea9b412767c99edd8c20911d575b7","responseTime":15,"status":200,"url":"/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd406ef1f-cc28-4464-a0e2-3677b3bf2254","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd406ef1f-cc28-4464-a0e2-3677b3bf2254","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:46.789172863Z"}]},"request_id":"63a97770-4c52-49f2-8bdd-8e0ca931af2d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616009.2430544} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"04a71f20-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc5034941-62fd-40ce-b783-0d452b2bcd11","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc5034941-62fd-40ce-b783-0d452b2bcd11","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:46.839176954Z"}]},"request_id":"00d1a86f-3b70-47f3-bdf5-00c6fdf5c5b7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616009.2460449} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"04a74630-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwOX0.lPoscvlrqoQx9vd08U6pXM_zrdIpe7O_Z6ybGJLDP_s","level":"info","message":"auth send jwt","requestID":"28e54be09d0b3f00779891202d262d01"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"28e54be09d0b3f00779891202d262d01","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"04a71f20-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254? 200 15ms","method":"GET","requestID":"04a71f20-50ec-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"28e54be09d0b3f00779891202d262d01"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"04a74630-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1305,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:49Z"} device-1 | {"level":"info","message":"GET /devices/c5034941-62fd-40ce-b783-0d452b2bcd11? 200 17ms","method":"GET","requestID":"04a74630-50ec-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/c5034941-62fd-40ce-b783-0d452b2bcd11?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1305,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.681172,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:49Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836"},"level":"info","message":"Building connection plan","requestID":"9cff51387a49196b6732683d03c28572"} 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":"fde1ba2d-dab3-48c1-aa8d-e1a45b8f715b"},{"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":"21656a81-f910-4677-9cca-90e4151a491d"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"3c657ce1-c5cb-402d-9918-4702fe646cef"}]},"level":"info","message":"Built pairwise service configurations","requestID":"9cff51387a49196b6732683d03c28572"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"9cff51387a49196b6732683d03c28572"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"28e54be09d0b3f00779891202d262d01","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616009,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwOX0.lPoscvlrqoQx9vd08U6pXM_zrdIpe7O_Z6ybGJLDP_s"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"28e54be09d0b3f00779891202d262d01","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"04aa5370-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc5034941-62fd-40ce-b783-0d452b2bcd11","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc5034941-62fd-40ce-b783-0d452b2bcd11","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:46.839176954Z"}]},"request_id":"4e157ef7-e07e-4e52-ab6f-7af6ecf276a2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616009.2560885} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"28e54be09d0b3f00779891202d262d01","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1306,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1306,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.728952,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"04aa5370-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616009,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAwOX0.lPoscvlrqoQx9vd08U6pXM_zrdIpe7O_Z6ybGJLDP_s"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"04aa5370-50ec-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"28e54be09d0b3f00779891202d262d01"} gateway-1 | {"time_local":"02/Aug/2024:16:26:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c5034941-62fd-40ce-b783-0d452b2bcd11? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"28e54be09d0b3f00779891202d262d01"} device-1 | {"level":"info","message":"GET /devices/c5034941-62fd-40ce-b783-0d452b2bcd11? 200 11ms","method":"GET","requestID":"28e54be09d0b3f00779891202d262d01","responseTime":11,"status":200,"url":"/devices/c5034941-62fd-40ce-b783-0d452b2bcd11?"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"70a5d726-4e29-4f43-a508-0b16560bc236","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616009.266389} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"42a2901e-6e46-4118-a7c8-15a824a56401","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616009.2666645} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"04aa5370-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"04aa5370-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"04aa5370-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/95e11664-58d7-49a3-a768-d52995205647'","requestID":"04aa5370-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/95e11664-58d7-49a3-a768-d52995205647'","requestID":"04aa5370-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"04aa5370-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 23ms","method":"POST","requestID":"04aa5370-50ec-11ef-8434-2f6d198c7397","responseTime":23,"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":"04aa5370-50ec-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"9cff51387a49196b6732683d03c28572"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"04b1f490-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1307,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd406ef1f-cc28-4464-a0e2-3677b3bf2254","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"79ead955-fbb0-4ad0-9ac2-85926010621a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616009.3100271} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1307,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.254389,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"04b1f490-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254","object_type":"device","rebac_allow":false,"scope_allow":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":"04b1f490-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"04b1f490-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254/signaling 200 9ms","method":"POST","requestID":"04b1f490-50ec-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"04b3a240-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1308,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:49Z"} device-1 | {"device":"c5034941-62fd-40ce-b783-0d452b2bcd11","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"c5034941-62fd-40ce-b783-0d452b2bcd11","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc5034941-62fd-40ce-b783-0d452b2bcd11","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"309aadfb-1a9f-467e-b58b-e73a73bafe17","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616009.3213885} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1308,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.129324,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"04b3a240-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11","object_type":"device","rebac_allow":false,"scope_allow":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":"04b3a240-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"04b3a240-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c5034941-62fd-40ce-b783-0d452b2bcd11/signaling 200 11ms","method":"POST","requestID":"04b3a240-50ec-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/c5034941-62fd-40ce-b783-0d452b2bcd11/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 2683678564540561123 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:/pmW\r\na=ice-pwd:gI+ZrvHGtQ0qGWqUbKSFEGOp\r\na=ice-options:trickle\r\na=fingerprint:sha-256 94:AD:03:93:DD:FC:C0:13:E9:B2:18:3F:51:EC:2E:D6:1B:AC:A0:71:0D:60:00:8C:1B:4E:0D:C6:14:F5:B9:48\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"c5034941-62fd-40ce-b783-0d452b2bcd11","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"c5034941-62fd-40ce-b783-0d452b2bcd11","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"d406ef1f-cc28-4464-a0e2-3677b3bf2254","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"95e11664-58d7-49a3-a768-d52995205647","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"d406ef1f-cc28-4464-a0e2-3677b3bf2254","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d406ef1f-cc28-4464-a0e2-3677b3bf2254","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d406ef1f-cc28-4464-a0e2-3677b3bf2254","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d406ef1f-cc28-4464-a0e2-3677b3bf2254","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/95e11664-58d7-49a3-a768-d52995205647' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"95e11664-58d7-49a3-a768-d52995205647","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"578f4895a1f991c1672a803a79103223","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":"578f4895a1f991c1672a803a79103223","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","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/95e11664-58d7-49a3-a768-d52995205647"}}},"level":"info","message":"received a callback","requestID":"578f4895a1f991c1672a803a79103223"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"578f4895a1f991c1672a803a79103223","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:51 +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":"578f4895a1f991c1672a803a79103223"} device-1 | {"content":{"candidate":"candidate:2226830477 1 udp 2113937151 6daf6d16-d28f-48bb-9d88-2fc2dc93d2a0.local 60881 typ host generation 0 ufrag /pmW network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c5034941-62fd-40ce-b783-0d452b2bcd11","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2175972309 1 udp 1677729535 141.24.211.56 60881 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag /pmW network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c5034941-62fd-40ce-b783-0d452b2bcd11","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3535735902 1 udp 33562623 141.24.210.113 60313 typ relay raddr 141.24.211.56 rport 60881 generation 0 ufrag /pmW network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c5034941-62fd-40ce-b783-0d452b2bcd11","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"c5034941-62fd-40ce-b783-0d452b2bcd11","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11'"} device-1 | {"data":{"peerconnection":"95e11664-58d7-49a3-a768-d52995205647","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"d406ef1f-cc28-4464-a0e2-3677b3bf2254","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"c5034941-62fd-40ce-b783-0d452b2bcd11","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"d406ef1f-cc28-4464-a0e2-3677b3bf2254","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"95e11664-58d7-49a3-a768-d52995205647","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/95e11664-58d7-49a3-a768-d52995205647' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"95e11664-58d7-49a3-a768-d52995205647","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ec40cd0010c2236efa1707860fb77c13","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":"ec40cd0010c2236efa1707860fb77c13","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","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/95e11664-58d7-49a3-a768-d52995205647"}}},"level":"info","message":"received a callback","requestID":"ec40cd0010c2236efa1707860fb77c13"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"05f43890-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1309,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:51Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F95e11664-58d7-49a3-a768-d52995205647","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9483758b-dc38-44c5-a219-499c3960e3a9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616011.4240572} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1309,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.432186,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/95e11664-58d7-49a3-a768-d52995205647","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"05f43890-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/95e11664-58d7-49a3-a768-d52995205647","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":"05f43890-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"05f43890-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/95e11664-58d7-49a3-a768-d52995205647 200 11ms","method":"GET","requestID":"05f43890-50ec-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/peerconnections/95e11664-58d7-49a3-a768-d52995205647"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 40ms","method":"POST","requestID":"ec40cd0010c2236efa1707860fb77c13","responseTime":40,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:51 +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.044","http_referrer":"","http_user_agent":"node-fetch","requestID":"ec40cd0010c2236efa1707860fb77c13"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"05f941a0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1310,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:51Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd406ef1f-cc28-4464-a0e2-3677b3bf2254","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"09628d8f-847d-44df-b946-988bb854ec05","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616011.457194} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1310,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.46073,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"05f941a0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254","object_type":"device","rebac_allow":false,"scope_allow":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":"05f941a0-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"05f941a0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254/signaling 200 13ms","method":"POST","requestID":"05f941a0-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"05fb8b90-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1311,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:51Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc5034941-62fd-40ce-b783-0d452b2bcd11","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aca7f603-09d2-4b3a-9e4b-18b3e0b3c5f7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616011.4694822} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1311,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.454425,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"05fb8b90-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11","object_type":"device","rebac_allow":false,"scope_allow":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":"05fb8b90-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"05fb8b90-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c5034941-62fd-40ce-b783-0d452b2bcd11/signaling 200 10ms","method":"POST","requestID":"05fb8b90-50ec-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/c5034941-62fd-40ce-b783-0d452b2bcd11/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMX0.OCUpj9JCLnHarxGY1titBvFEyLZkRPywQkPXpLXIySg","level":"info","message":"auth send jwt","requestID":"3a0be0d8ff567233bff6f73f9c0e0e47"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3a0be0d8ff567233bff6f73f9c0e0e47","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836","requestID":"3a0be0d8ff567233bff6f73f9c0e0e47"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1312,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:51Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1312,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.183111,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"3a0be0d8ff567233bff6f73f9c0e0e47","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616011,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMX0.OCUpj9JCLnHarxGY1titBvFEyLZkRPywQkPXpLXIySg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3a0be0d8ff567233bff6f73f9c0e0e47","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836","requestID":"3a0be0d8ff567233bff6f73f9c0e0e47"} gateway-1 | {"time_local":"02/Aug/2024:16:26:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836 HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3a0be0d8ff567233bff6f73f9c0e0e47"} experiment-1 | {"level":"info","message":"GET /experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836 200 14ms","method":"GET","requestID":"3a0be0d8ff567233bff6f73f9c0e0e47","responseTime":14,"status":200,"url":"/experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMX0.OCUpj9JCLnHarxGY1titBvFEyLZkRPywQkPXpLXIySg","level":"info","message":"auth send jwt","requestID":"3d472546ec8df8648e04df9862e63966"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3d472546ec8df8648e04df9862e63966","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836","requestID":"3d472546ec8df8648e04df9862e63966"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1313,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:51Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1313,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.236335,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:51Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"3d472546ec8df8648e04df9862e63966","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616011,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMX0.OCUpj9JCLnHarxGY1titBvFEyLZkRPywQkPXpLXIySg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3d472546ec8df8648e04df9862e63966","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836"},"level":"info","message":"Attempting to finish experiment","requestID":"3d472546ec8df8648e04df9862e63966"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"0607c090-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1314,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:51Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1314,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.249822,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:51Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/95e11664-58d7-49a3-a768-d52995205647","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0607c090-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/95e11664-58d7-49a3-a768-d52995205647","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616011,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMX0.OCUpj9JCLnHarxGY1titBvFEyLZkRPywQkPXpLXIySg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0607c090-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/95e11664-58d7-49a3-a768-d52995205647","device":"c5034941-62fd-40ce-b783-0d452b2bcd11","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"d406ef1f-cc28-4464-a0e2-3677b3bf2254","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d406ef1f-cc28-4464-a0e2-3677b3bf2254","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d406ef1f-cc28-4464-a0e2-3677b3bf2254","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/95e11664-58d7-49a3-a768-d52995205647' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/95e11664-58d7-49a3-a768-d52995205647' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"95e11664-58d7-49a3-a768-d52995205647","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F95e11664-58d7-49a3-a768-d52995205647': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F95e11664-58d7-49a3-a768-d52995205647","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"6e0b1b15-e234-4855-b7e1-e7bd344b77cd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616011.5719423} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"69afe104f66c6431f7fb36c41007fc54","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e375eb0e-5577-455c-ad67-51470544a618","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616011.572619} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"69afe104f66c6431f7fb36c41007fc54","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"0607c090-50ec-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"47cbd3cace0efa986f68d27ce7f7662c","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":"47cbd3cace0efa986f68d27ce7f7662c","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/95e11664-58d7-49a3-a768-d52995205647"}}},"level":"info","message":"received a callback","requestID":"69afe104f66c6431f7fb36c41007fc54"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/95e11664-58d7-49a3-a768-d52995205647"}}},"level":"info","message":"received a callback","requestID":"47cbd3cace0efa986f68d27ce7f7662c"} device-1 | {"data":{"peerconnection":"95e11664-58d7-49a3-a768-d52995205647","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"0607c090-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/95e11664-58d7-49a3-a768-d52995205647 204 54ms","method":"DELETE","requestID":"0607c090-50ec-11ef-8434-2f6d198c7397","responseTime":54,"status":204,"url":"/peerconnections/95e11664-58d7-49a3-a768-d52995205647"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836"},"level":"info","message":"Successfully finished experiment","requestID":"3d472546ec8df8648e04df9862e63966"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"06135950-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1315,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:51Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd406ef1f-cc28-4464-a0e2-3677b3bf2254","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"98baaf7e-0049-46de-a84e-bc5a77ef82a5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616011.6275406} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1315,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.007687,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"06135950-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254","object_type":"device","rebac_allow":false,"scope_allow":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":"06135950-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"06135950-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254/signaling 200 13ms","method":"POST","requestID":"06135950-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffb29ad3a-1f50-4a18-b22d-c611074b8836': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffb29ad3a-1f50-4a18-b22d-c611074b8836","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"8471e5dd-052b-47cb-a0cf-90ba7fa7f387","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616011.6358447} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"060ef701-517d-4879-9eb1-0ac822c7aea8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616011.6363943} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0615ca50-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"3d472546ec8df8648e04df9862e63966","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1316,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:51Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc5034941-62fd-40ce-b783-0d452b2bcd11","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"76f90319-4b16-4057-84ce-eb461263346b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616011.6438456} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1316,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.508325,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0615ca50-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11","object_type":"device","rebac_allow":false,"scope_allow":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":"0615ca50-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0615ca50-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c5034941-62fd-40ce-b783-0d452b2bcd11/signaling 200 13ms","method":"POST","requestID":"0615ca50-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/c5034941-62fd-40ce-b783-0d452b2bcd11/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836","requestID":"3d472546ec8df8648e04df9862e63966"} gateway-1 | {"time_local":"02/Aug/2024:16:26:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836 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":"3d472546ec8df8648e04df9862e63966"} experiment-1 | {"level":"info","message":"DELETE /experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836 204 182ms","method":"DELETE","requestID":"3d472546ec8df8648e04df9862e63966","responseTime":182,"status":204,"url":"/experiments/fb29ad3a-1f50-4a18-b22d-c611074b8836"} gateway-1 | {"time_local":"02/Aug/2024:16:26:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3626","request_time":"4.291","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"3c182eeb25a9e12cc23efff6ae51d974"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 142ms","method":"POST","requestID":"69afe104f66c6431f7fb36c41007fc54","responseTime":142,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:51 +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":"69afe104f66c6431f7fb36c41007fc54"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMX0.OCUpj9JCLnHarxGY1titBvFEyLZkRPywQkPXpLXIySg","level":"info","message":"auth send jwt","requestID":"27395810e27b6c31a609c45dce7ed5c9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 141ms","method":"POST","requestID":"47cbd3cace0efa986f68d27ce7f7662c","responseTime":141,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevices called","requestID":"27395810e27b6c31a609c45dce7ed5c9"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"27395810e27b6c31a609c45dce7ed5c9","responseTime":5,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:26:51 +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":"47cbd3cace0efa986f68d27ce7f7662c"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1317,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:51Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/d406ef1f-cc28-4464-a0e2-3677b3bf2254' closed"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1317,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.898545,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:51Z"} gateway-1 | {"time_local":"02/Aug/2024:16:26:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3087","request_time":"2.806","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":"636b2c74855fe4319ecfec0df76bdb94"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/c5034941-62fd-40ce-b783-0d452b2bcd11' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"27395810e27b6c31a609c45dce7ed5c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616011,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMX0.OCUpj9JCLnHarxGY1titBvFEyLZkRPywQkPXpLXIySg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"27395810e27b6c31a609c45dce7ed5c9","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F203ee6e9-95b4-4b8d-9648-6be20a2407d0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9bcb22e4-0fa8-45fd-aea5-fd8f2bfa65e5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616011.7404754} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"27395810e27b6c31a609c45dce7ed5c9","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b904e0fd-b113-4414-949d-5295cc712b5b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616011.7451775} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"27395810e27b6c31a609c45dce7ed5c9","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F203ee6e9-95b4-4b8d-9648-6be20a2407d0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"e9347fbe-71b5-4bc1-9aa4-a859518a045c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616011.7551556} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fbf51df2-ad23-490a-9875-cd70ca93be4b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616011.7556822} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"27395810e27b6c31a609c45dce7ed5c9","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F203ee6e9-95b4-4b8d-9648-6be20a2407d0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F203ee6e9-95b4-4b8d-9648-6be20a2407d0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:51.755089318Z"}]},"request_id":"16840b5c-8801-43c0-89c4-d410c8b3bb01","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616011.7598069} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"27395810e27b6c31a609c45dce7ed5c9","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"27395810e27b6c31a609c45dce7ed5c9"} gateway-1 | {"time_local":"02/Aug/2024:16:26:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"27395810e27b6c31a609c45dce7ed5c9"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"27395810e27b6c31a609c45dce7ed5c9","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMX0.OCUpj9JCLnHarxGY1titBvFEyLZkRPywQkPXpLXIySg","level":"info","message":"auth send jwt","requestID":"273c8cb23c6a45fb8522d8c5c7f1395c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"273c8cb23c6a45fb8522d8c5c7f1395c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"273c8cb23c6a45fb8522d8c5c7f1395c"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1318,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:51Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1318,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.661962,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"273c8cb23c6a45fb8522d8c5c7f1395c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616011,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMX0.OCUpj9JCLnHarxGY1titBvFEyLZkRPywQkPXpLXIySg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"273c8cb23c6a45fb8522d8c5c7f1395c","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb42ee9a4-5376-4077-bcc6-a13f0ed2a983","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b094f64f-ad1c-4481-9607-f4756f1411d5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616011.7888465} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"273c8cb23c6a45fb8522d8c5c7f1395c","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3385efd2-2c5c-4d05-a5ad-6f62101b2499","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616011.7933142} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"273c8cb23c6a45fb8522d8c5c7f1395c","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb42ee9a4-5376-4077-bcc6-a13f0ed2a983","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"0f294253-ee0d-4754-8526-bd27312fc1f1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616011.8043027} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"43d53b9d-4f47-44e2-ad59-143e2ad4c741","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616011.8043356} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"273c8cb23c6a45fb8522d8c5c7f1395c","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb42ee9a4-5376-4077-bcc6-a13f0ed2a983","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb42ee9a4-5376-4077-bcc6-a13f0ed2a983","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:51.804252084Z"}]},"request_id":"d43e5280-9380-43d1-a10b-8a1973577507","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616011.8083963} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"273c8cb23c6a45fb8522d8c5c7f1395c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"273c8cb23c6a45fb8522d8c5c7f1395c"} gateway-1 | {"time_local":"02/Aug/2024:16:26:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"273c8cb23c6a45fb8522d8c5c7f1395c"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"273c8cb23c6a45fb8522d8c5c7f1395c","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM","level":"info","message":"auth send jwt","requestID":"8652ea537bf0cb7a03f26a929d0ec156"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8652ea537bf0cb7a03f26a929d0ec156","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM","level":"info","message":"auth send jwt","requestID":"7ba4c95e6d6f8abd138e02dc00ab730a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7ba4c95e6d6f8abd138e02dc00ab730a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"8652ea537bf0cb7a03f26a929d0ec156"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"7ba4c95e6d6f8abd138e02dc00ab730a"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1319,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Received request.","req_id":1320,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1319,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.561064,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"8652ea537bf0cb7a03f26a929d0ec156","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616012,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8652ea537bf0cb7a03f26a929d0ec156","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Sent response.","req_id":1320,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.690608,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"7ba4c95e6d6f8abd138e02dc00ab730a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616012,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7ba4c95e6d6f8abd138e02dc00ab730a","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb42ee9a4-5376-4077-bcc6-a13f0ed2a983","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb42ee9a4-5376-4077-bcc6-a13f0ed2a983","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:51.804252084Z"}]},"request_id":"f98647a7-133f-4c17-b8e6-13920f28dd44","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.3173566} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8652ea537bf0cb7a03f26a929d0ec156","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F203ee6e9-95b4-4b8d-9648-6be20a2407d0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F203ee6e9-95b4-4b8d-9648-6be20a2407d0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:51.755089318Z"}]},"request_id":"29f16d72-2d08-4401-822e-246513783588","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.318094} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7ba4c95e6d6f8abd138e02dc00ab730a","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0b3c780c-b90b-428b-bc91-5611def932ec","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.321827} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"8652ea537bf0cb7a03f26a929d0ec156","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"665b161c-8622-4ebd-9e9c-c80fa53be5ab","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.3230727} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"7ba4c95e6d6f8abd138e02dc00ab730a","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F203ee6e9-95b4-4b8d-9648-6be20a2407d0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F203ee6e9-95b4-4b8d-9648-6be20a2407d0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:51.755089318Z"}]},"request_id":"d1f30379-8470-4a42-a98d-3abb46685489","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.3258228} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7ba4c95e6d6f8abd138e02dc00ab730a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"7ba4c95e6d6f8abd138e02dc00ab730a"} device-1 | {"level":"info","message":"PATCH /devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0 200 19ms","method":"PATCH","requestID":"7ba4c95e6d6f8abd138e02dc00ab730a","responseTime":19,"status":200,"url":"/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0"} gateway-1 | {"time_local":"02/Aug/2024:16:26:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"7ba4c95e6d6f8abd138e02dc00ab730a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM","level":"info","message":"auth send jwt","requestID":"29e72cdc1232c04a3f322ec5412d75da"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"29e72cdc1232c04a3f322ec5412d75da","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"29e72cdc1232c04a3f322ec5412d75da"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1321,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1321,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.739493,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"29e72cdc1232c04a3f322ec5412d75da","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616012,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"29e72cdc1232c04a3f322ec5412d75da","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb42ee9a4-5376-4077-bcc6-a13f0ed2a983","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb42ee9a4-5376-4077-bcc6-a13f0ed2a983","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:51.804252084Z"}]},"request_id":"898debcc-0f92-4c4f-a126-31251fd8404a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.3361607} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8652ea537bf0cb7a03f26a929d0ec156","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"8652ea537bf0cb7a03f26a929d0ec156"} gateway-1 | {"time_local":"02/Aug/2024:16:26:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.039","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"8652ea537bf0cb7a03f26a929d0ec156"} device-1 | {"level":"info","message":"PATCH /devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983 200 33ms","method":"PATCH","requestID":"8652ea537bf0cb7a03f26a929d0ec156","responseTime":33,"status":200,"url":"/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM","level":"info","message":"auth send jwt","requestID":"4337c0819fc3bbd61444897ea5a18ad6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4337c0819fc3bbd61444897ea5a18ad6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4337c0819fc3bbd61444897ea5a18ad6"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1322,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1322,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.797511,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"4337c0819fc3bbd61444897ea5a18ad6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616012,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4337c0819fc3bbd61444897ea5a18ad6","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"29e72cdc1232c04a3f322ec5412d75da"} gateway-1 | {"time_local":"02/Aug/2024:16:26:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"29e72cdc1232c04a3f322ec5412d75da"} device-1 | {"level":"info","message":"POST /devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0/websocket 200 17ms","method":"POST","requestID":"29e72cdc1232c04a3f322ec5412d75da","responseTime":17,"status":200,"url":"/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4337c0819fc3bbd61444897ea5a18ad6"} gateway-1 | {"time_local":"02/Aug/2024:16:26:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.019","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"4337c0819fc3bbd61444897ea5a18ad6"} device-1 | {"level":"info","message":"POST /devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983/websocket 200 16ms","method":"POST","requestID":"4337c0819fc3bbd61444897ea5a18ad6","responseTime":16,"status":200,"url":"/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM","level":"info","message":"auth send jwt","requestID":"fb213ebf3fe951ff6923405ba91ab407"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fb213ebf3fe951ff6923405ba91ab407","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fb213ebf3fe951ff6923405ba91ab407"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1323,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1323,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.7962,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fb213ebf3fe951ff6923405ba91ab407","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616012,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"fb213ebf3fe951ff6923405ba91ab407","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F203ee6e9-95b4-4b8d-9648-6be20a2407d0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F203ee6e9-95b4-4b8d-9648-6be20a2407d0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:51.755089318Z"}]},"request_id":"7f5064ff-241e-45b5-b7a8-02ce2ec6ac19","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.391417} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"fb213ebf3fe951ff6923405ba91ab407","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fb213ebf3fe951ff6923405ba91ab407"} gateway-1 | {"time_local":"02/Aug/2024:16:26:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fb213ebf3fe951ff6923405ba91ab407"} device-1 | {"level":"info","message":"GET /devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0? 200 10ms","method":"GET","requestID":"fb213ebf3fe951ff6923405ba91ab407","responseTime":10,"status":200,"url":"/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM","level":"info","message":"auth send jwt","requestID":"7d6e1c6b31c35947643bb538761e465b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7d6e1c6b31c35947643bb538761e465b","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7d6e1c6b31c35947643bb538761e465b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1324,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1324,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.852984,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"7d6e1c6b31c35947643bb538761e465b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616012,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7d6e1c6b31c35947643bb538761e465b","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb42ee9a4-5376-4077-bcc6-a13f0ed2a983","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb42ee9a4-5376-4077-bcc6-a13f0ed2a983","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:51.804252084Z"}]},"request_id":"5c3c995b-9984-4c41-9943-277e6b6d48c3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.410328} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7d6e1c6b31c35947643bb538761e465b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7d6e1c6b31c35947643bb538761e465b"} gateway-1 | {"time_local":"02/Aug/2024:16:26:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7d6e1c6b31c35947643bb538761e465b"} device-1 | {"level":"info","message":"GET /devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983? 200 13ms","method":"GET","requestID":"7d6e1c6b31c35947643bb538761e465b","responseTime":13,"status":200,"url":"/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM","level":"info","message":"auth send jwt","requestID":"e7525345de3703c1b753abba2765c791"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e7525345de3703c1b753abba2765c791","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"e7525345de3703c1b753abba2765c791"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1325,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1325,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.281168,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e7525345de3703c1b753abba2765c791","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616012,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e7525345de3703c1b753abba2765c791","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c56a493-35fd-4235-8873-632cbf5ec66c"},"level":"info","message":"Attempting to run experiment","requestID":"e7525345de3703c1b753abba2765c791"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c56a493-35fd-4235-8873-632cbf5ec66c"},"level":"info","message":"Attempting to book experiment","requestID":"e7525345de3703c1b753abba2765c791"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c56a493-35fd-4235-8873-632cbf5ec66c"},"level":"info","message":"Successfully booked experiment","requestID":"e7525345de3703c1b753abba2765c791"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0693d3f0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"06942210-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1326,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1326,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.804394,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0693d3f0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616012,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0693d3f0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Received request.","req_id":1327,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Sent response.","req_id":1327,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.961349,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"06942210-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616012,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"06942210-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F203ee6e9-95b4-4b8d-9648-6be20a2407d0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F203ee6e9-95b4-4b8d-9648-6be20a2407d0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:51.755089318Z"}]},"request_id":"4caa43d5-29ed-439b-b63c-e81751ea9235","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.4730742} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0693d3f0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb42ee9a4-5376-4077-bcc6-a13f0ed2a983","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb42ee9a4-5376-4077-bcc6-a13f0ed2a983","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:51.804252084Z"}]},"request_id":"2b183cac-1ba9-4cb7-b206-389b0c5260b3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.4741726} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"06942210-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0693d3f0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0? 200 18ms","method":"GET","requestID":"0693d3f0-50ec-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"06942210-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983? 200 17ms","method":"GET","requestID":"06942210-50ec-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c56a493-35fd-4235-8873-632cbf5ec66c"},"level":"info","message":"Setting up experiment","requestID":"e7525345de3703c1b753abba2765c791"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c56a493-35fd-4235-8873-632cbf5ec66c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"e7525345de3703c1b753abba2765c791"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c56a493-35fd-4235-8873-632cbf5ec66c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"e7525345de3703c1b753abba2765c791"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c56a493-35fd-4235-8873-632cbf5ec66c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"e7525345de3703c1b753abba2765c791"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c56a493-35fd-4235-8873-632cbf5ec66c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"e7525345de3703c1b753abba2765c791"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c56a493-35fd-4235-8873-632cbf5ec66c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"e7525345de3703c1b753abba2765c791"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c56a493-35fd-4235-8873-632cbf5ec66c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"e7525345de3703c1b753abba2765c791"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c56a493-35fd-4235-8873-632cbf5ec66c"},"level":"info","message":"Successfully set up experiment","requestID":"e7525345de3703c1b753abba2765c791"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"069ed070-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"069f1e90-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1328,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:52Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"069f6cb0-50ec-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c56a493-35fd-4235-8873-632cbf5ec66c"},"level":"info","message":"Successfully running experiment","requestID":"e7525345de3703c1b753abba2765c791"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1328,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.795427,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Received request.","req_id":1329,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"069ed070-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616012,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"069ed070-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Sent response.","req_id":1329,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.798351,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"069f1e90-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616012,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"069f1e90-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1330,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F203ee6e9-95b4-4b8d-9648-6be20a2407d0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8892d454-0197-4867-9b72-e5c3ca517990","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.5455127} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb42ee9a4-5376-4077-bcc6-a13f0ed2a983","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb42ee9a4-5376-4077-bcc6-a13f0ed2a983","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:51.804252084Z"}]},"request_id":"46a7bd85-1426-4518-baca-da9c36359e7f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.546575} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1330,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.535085,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"069f6cb0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0","object_type":"device","rebac_allow":false,"scope_allow":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":"069f6cb0-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"069f1e90-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F203ee6e9-95b4-4b8d-9648-6be20a2407d0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F203ee6e9-95b4-4b8d-9648-6be20a2407d0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:51.755089318Z"}]},"request_id":"ec2091c6-0436-4ecd-8f39-08625c2d0077","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.5479271} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"069ed070-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"069f6cb0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0/signaling 200 15ms","method":"POST","requestID":"069f6cb0-50ec-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"069f1e90-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983? 200 18ms","method":"GET","requestID":"069f1e90-50ec-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"069ed070-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0? 200 22ms","method":"GET","requestID":"069ed070-50ec-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"06a279f0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"06a2c810-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5c56a493-35fd-4235-8873-632cbf5ec66c#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5c56a493-35fd-4235-8873-632cbf5ec66c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"6e5e49fd-d6f9-4ea1-b493-40d9b3d43efb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.5615506} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6a0b83d4-e8de-443f-b5f9-dbe3f8768cb1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.562101} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1331,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Received request.","req_id":1332,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"e7525345de3703c1b753abba2765c791","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb42ee9a4-5376-4077-bcc6-a13f0ed2a983","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0dd890bc-5a7c-49a4-a234-9f666e6e819c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.5656893} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F203ee6e9-95b4-4b8d-9648-6be20a2407d0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a1bec1d7-7a6f-46ab-b766-7c0d24239453","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.5668402} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1331,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.66992,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"06a279f0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983","object_type":"device","rebac_allow":false,"scope_allow":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":"06a279f0-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Sent response.","req_id":1332,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.286332,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"06a2c810-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0","object_type":"device","rebac_allow":false,"scope_allow":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":"06a2c810-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/5c56a493-35fd-4235-8873-632cbf5ec66c","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"e7525345de3703c1b753abba2765c791"} gateway-1 | {"time_local":"02/Aug/2024:16:26:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1220","request_time":"0.156","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e7525345de3703c1b753abba2765c791"} experiment-1 | {"level":"info","message":"POST /experiments? 201 150ms","method":"POST","requestID":"e7525345de3703c1b753abba2765c791","responseTime":150,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"06a279f0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983/signaling 200 15ms","method":"POST","requestID":"06a279f0-50ec-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"06a2c810-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0/signaling 200 14ms","method":"POST","requestID":"06a2c810-50ec-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM","level":"info","message":"auth send jwt","requestID":"2e6434852a10c5c57a69f0cd87680efb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2e6434852a10c5c57a69f0cd87680efb","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"06a53910-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2e6434852a10c5c57a69f0cd87680efb"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1333,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Received request.","req_id":1334,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb42ee9a4-5376-4077-bcc6-a13f0ed2a983","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d0f3ec8c-ef38-48f2-a143-88c3070a090a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.5831232} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Sent response.","req_id":1334,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.102904,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"2e6434852a10c5c57a69f0cd87680efb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616012,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2e6434852a10c5c57a69f0cd87680efb","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1333,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.225584,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"06a53910-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983","object_type":"device","rebac_allow":false,"scope_allow":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":"06a53910-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F203ee6e9-95b4-4b8d-9648-6be20a2407d0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F203ee6e9-95b4-4b8d-9648-6be20a2407d0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:51.755089318Z"}]},"request_id":"d083cfc9-2587-4b54-9836-566ae8950b2b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.5916016} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"06a53910-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983/signaling 200 15ms","method":"POST","requestID":"06a53910-50ec-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2e6434852a10c5c57a69f0cd87680efb","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c56a493-35fd-4235-8873-632cbf5ec66c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"e7525345de3703c1b753abba2765c791"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"06a7d120-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"06a7f830-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2e6434852a10c5c57a69f0cd87680efb"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1335,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1335,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.683259,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:52Z"} gateway-1 | {"time_local":"02/Aug/2024:16:26:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2e6434852a10c5c57a69f0cd87680efb"} device-1 | {"level":"info","message":"GET /devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0? 200 19ms","method":"GET","requestID":"2e6434852a10c5c57a69f0cd87680efb","responseTime":19,"status":200,"url":"/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"06a7d120-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616012,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"06a7d120-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Received request.","req_id":1336,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Sent response.","req_id":1336,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.827858,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"06a7f830-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616012,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"06a7f830-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM","level":"info","message":"auth send jwt","requestID":"388db2eb3cad21abdf0a5268807f6643"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F203ee6e9-95b4-4b8d-9648-6be20a2407d0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F203ee6e9-95b4-4b8d-9648-6be20a2407d0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:51.755089318Z"}]},"request_id":"a2f48964-eb9b-4911-bebe-c42c95152a15","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.601488} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"388db2eb3cad21abdf0a5268807f6643","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"06a7d120-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb42ee9a4-5376-4077-bcc6-a13f0ed2a983","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb42ee9a4-5376-4077-bcc6-a13f0ed2a983","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:51.804252084Z"}]},"request_id":"2fab7c69-548a-45ab-891a-2918a84e7a86","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.602863} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"06a7f830-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"388db2eb3cad21abdf0a5268807f6643"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1337,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1337,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.715888,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"388db2eb3cad21abdf0a5268807f6643","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616012,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"06a7d120-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"388db2eb3cad21abdf0a5268807f6643","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0? 200 15ms","method":"GET","requestID":"06a7d120-50ec-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"06a7f830-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983? 200 14ms","method":"GET","requestID":"06a7f830-50ec-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c56a493-35fd-4235-8873-632cbf5ec66c"},"level":"info","message":"Building connection plan","requestID":"e7525345de3703c1b753abba2765c791"} 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":"2adcf4db-8a15-40b0-bf28-9c7438c74751"},{"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":"6b89c44f-dd28-4fc1-a037-104c82db6ead"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"29b9d537-f5e2-4b56-9b32-f6def9d9f115"}]},"level":"info","message":"Built pairwise service configurations","requestID":"e7525345de3703c1b753abba2765c791"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"e7525345de3703c1b753abba2765c791"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"06aa6930-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb42ee9a4-5376-4077-bcc6-a13f0ed2a983","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb42ee9a4-5376-4077-bcc6-a13f0ed2a983","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:51.804252084Z"}]},"request_id":"7f17ecb3-d50f-4890-808e-438461bab034","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.6123214} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"388db2eb3cad21abdf0a5268807f6643","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1338,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1338,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.692051,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"06aa6930-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616012,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxMn0.IpX2l-3UAtz4WSUC3Z7g32QrhS5Ca0XNJRFbgc80JeM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"06aa6930-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"388db2eb3cad21abdf0a5268807f6643"} gateway-1 | {"time_local":"02/Aug/2024:16:26:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"388db2eb3cad21abdf0a5268807f6643"} device-1 | {"level":"info","message":"GET /devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983? 200 13ms","method":"GET","requestID":"388db2eb3cad21abdf0a5268807f6643","responseTime":13,"status":200,"url":"/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983?"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"fbf64251-b413-4f64-afda-20e0149913b3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.6223893} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7e32f152-3446-446b-b85d-9aac0608623f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.6226647} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"06aa6930-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"06aa6930-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"06aa6930-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/75bfbe9f-890b-418b-a64e-4c5fc762a0b4'","requestID":"06aa6930-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/75bfbe9f-890b-418b-a64e-4c5fc762a0b4'","requestID":"06aa6930-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"06aa6930-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 24ms","method":"POST","requestID":"06aa6930-50ec-11ef-8434-2f6d198c7397","responseTime":24,"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":"06aa6930-50ec-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c56a493-35fd-4235-8873-632cbf5ec66c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"e7525345de3703c1b753abba2765c791"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"06b23160-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1339,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1339,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.544371,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F203ee6e9-95b4-4b8d-9648-6be20a2407d0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"702c1e92-4869-4d5b-9ebd-ed2efdaafbc6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.6661282} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"06b23160-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0","object_type":"device","rebac_allow":false,"scope_allow":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":"06b23160-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"06b23160-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0/signaling 200 11ms","method":"POST","requestID":"06b23160-50ec-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"06b42d30-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1340,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb42ee9a4-5376-4077-bcc6-a13f0ed2a983","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"397e0858-d111-407a-9386-2b4c328e2b6a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616012.6805723} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1340,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.695899,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"06b42d30-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983","object_type":"device","rebac_allow":false,"scope_allow":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":"06b42d30-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"06b42d30-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983/signaling 200 10ms","method":"POST","requestID":"06b42d30-50ec-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983/signaling"} device-1 | {"device":"b42ee9a4-5376-4077-bcc6-a13f0ed2a983","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"75bfbe9f-890b-418b-a64e-4c5fc762a0b4","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"203ee6e9-95b4-4b8d-9648-6be20a2407d0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"75bfbe9f-890b-418b-a64e-4c5fc762a0b4","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"203ee6e9-95b4-4b8d-9648-6be20a2407d0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"203ee6e9-95b4-4b8d-9648-6be20a2407d0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"203ee6e9-95b4-4b8d-9648-6be20a2407d0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"203ee6e9-95b4-4b8d-9648-6be20a2407d0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/75bfbe9f-890b-418b-a64e-4c5fc762a0b4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"75bfbe9f-890b-418b-a64e-4c5fc762a0b4","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dab807a65b88773041fbafdb443c75e7","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":"dab807a65b88773041fbafdb443c75e7","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/75bfbe9f-890b-418b-a64e-4c5fc762a0b4"}}},"level":"info","message":"received a callback","requestID":"dab807a65b88773041fbafdb443c75e7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"dab807a65b88773041fbafdb443c75e7","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:54 +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":"dab807a65b88773041fbafdb443c75e7"} device-1 | {"device":"b42ee9a4-5376-4077-bcc6-a13f0ed2a983","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b42ee9a4-5376-4077-bcc6-a13f0ed2a983","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b42ee9a4-5376-4077-bcc6-a13f0ed2a983","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"203ee6e9-95b4-4b8d-9648-6be20a2407d0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"75bfbe9f-890b-418b-a64e-4c5fc762a0b4","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"b42ee9a4-5376-4077-bcc6-a13f0ed2a983","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"203ee6e9-95b4-4b8d-9648-6be20a2407d0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b42ee9a4-5376-4077-bcc6-a13f0ed2a983","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"75bfbe9f-890b-418b-a64e-4c5fc762a0b4","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/75bfbe9f-890b-418b-a64e-4c5fc762a0b4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"75bfbe9f-890b-418b-a64e-4c5fc762a0b4","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"684bfad9a7cf7b16cb8eb33351a0bf1e","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":"684bfad9a7cf7b16cb8eb33351a0bf1e","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","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/75bfbe9f-890b-418b-a64e-4c5fc762a0b4"}}},"level":"info","message":"received a callback","requestID":"684bfad9a7cf7b16cb8eb33351a0bf1e"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"07f0a4d0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1341,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:54Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F75bfbe9f-890b-418b-a64e-4c5fc762a0b4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"900e83a2-4ae9-48a1-bbb1-201566a16803","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616014.7560802} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1341,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.867285,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/75bfbe9f-890b-418b-a64e-4c5fc762a0b4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"07f0a4d0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/75bfbe9f-890b-418b-a64e-4c5fc762a0b4","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":"07f0a4d0-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"07f0a4d0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/75bfbe9f-890b-418b-a64e-4c5fc762a0b4 200 13ms","method":"GET","requestID":"07f0a4d0-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/peerconnections/75bfbe9f-890b-418b-a64e-4c5fc762a0b4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 52ms","method":"POST","requestID":"684bfad9a7cf7b16cb8eb33351a0bf1e","responseTime":52,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:54 +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.056","http_referrer":"","http_user_agent":"node-fetch","requestID":"684bfad9a7cf7b16cb8eb33351a0bf1e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"07f75b90-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1342,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:54Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F203ee6e9-95b4-4b8d-9648-6be20a2407d0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"419ba889-5b1f-4a83-a795-d61af653aa47","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616014.798663} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1342,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.360008,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"07f75b90-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0","object_type":"device","rebac_allow":false,"scope_allow":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":"07f75b90-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"07f75b90-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0/signaling 200 12ms","method":"POST","requestID":"07f75b90-50ec-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"07f9cc90-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1343,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:54Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb42ee9a4-5376-4077-bcc6-a13f0ed2a983","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"91f74833-d3f9-49af-8da1-19dd40c0a629","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616014.8173418} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1343,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.534426,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"07f9cc90-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983","object_type":"device","rebac_allow":false,"scope_allow":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":"07f9cc90-50ec-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"07f9cc90-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983/signaling 200 16ms","method":"POST","requestID":"07f9cc90-50ec-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNH0.I0XDP-yRNXdQMPd-csbgpSi-RjvoBJm4eearwJzeU6w","level":"info","message":"auth send jwt","requestID":"374ff68ef4111c56213466eb0077b41b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"374ff68ef4111c56213466eb0077b41b","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/5c56a493-35fd-4235-8873-632cbf5ec66c","requestID":"374ff68ef4111c56213466eb0077b41b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1344,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:54Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1344,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.200807,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5c56a493-35fd-4235-8873-632cbf5ec66c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"374ff68ef4111c56213466eb0077b41b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/5c56a493-35fd-4235-8873-632cbf5ec66c","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616014,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNH0.I0XDP-yRNXdQMPd-csbgpSi-RjvoBJm4eearwJzeU6w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"374ff68ef4111c56213466eb0077b41b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/5c56a493-35fd-4235-8873-632cbf5ec66c","requestID":"374ff68ef4111c56213466eb0077b41b"} experiment-1 | {"level":"info","message":"GET /experiments/5c56a493-35fd-4235-8873-632cbf5ec66c 200 15ms","method":"GET","requestID":"374ff68ef4111c56213466eb0077b41b","responseTime":15,"status":200,"url":"/experiments/5c56a493-35fd-4235-8873-632cbf5ec66c"} gateway-1 | {"time_local":"02/Aug/2024:16:26:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/5c56a493-35fd-4235-8873-632cbf5ec66c HTTP/1.1","status": "200","body_bytes_sent":"1293","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"374ff68ef4111c56213466eb0077b41b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNH0.I0XDP-yRNXdQMPd-csbgpSi-RjvoBJm4eearwJzeU6w","level":"info","message":"auth send jwt","requestID":"3d4fe71d89b94837c5742ac6533cc4ff"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3d4fe71d89b94837c5742ac6533cc4ff","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/5c56a493-35fd-4235-8873-632cbf5ec66c","requestID":"3d4fe71d89b94837c5742ac6533cc4ff"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1345,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:54Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1345,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.301251,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:54Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5c56a493-35fd-4235-8873-632cbf5ec66c","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"3d4fe71d89b94837c5742ac6533cc4ff","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/5c56a493-35fd-4235-8873-632cbf5ec66c","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616014,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNH0.I0XDP-yRNXdQMPd-csbgpSi-RjvoBJm4eearwJzeU6w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3d4fe71d89b94837c5742ac6533cc4ff","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c56a493-35fd-4235-8873-632cbf5ec66c"},"level":"info","message":"Attempting to finish experiment","requestID":"3d4fe71d89b94837c5742ac6533cc4ff"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"0803deb0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1346,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:54Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1346,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.254364,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:54Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/75bfbe9f-890b-418b-a64e-4c5fc762a0b4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0803deb0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/75bfbe9f-890b-418b-a64e-4c5fc762a0b4","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616014,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNH0.I0XDP-yRNXdQMPd-csbgpSi-RjvoBJm4eearwJzeU6w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0803deb0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"device":"203ee6e9-95b4-4b8d-9648-6be20a2407d0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"203ee6e9-95b4-4b8d-9648-6be20a2407d0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"203ee6e9-95b4-4b8d-9648-6be20a2407d0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b42ee9a4-5376-4077-bcc6-a13f0ed2a983","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b42ee9a4-5376-4077-bcc6-a13f0ed2a983","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b42ee9a4-5376-4077-bcc6-a13f0ed2a983","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/75bfbe9f-890b-418b-a64e-4c5fc762a0b4' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/75bfbe9f-890b-418b-a64e-4c5fc762a0b4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"75bfbe9f-890b-418b-a64e-4c5fc762a0b4","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2afa111ab257ea23f4ccf95d1e24e3fe","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":"2afa111ab257ea23f4ccf95d1e24e3fe","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3ee51a155dad954e013517aa5165c177","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/75bfbe9f-890b-418b-a64e-4c5fc762a0b4"}}},"level":"info","message":"received a callback","requestID":"2afa111ab257ea23f4ccf95d1e24e3fe"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3ee51a155dad954e013517aa5165c177","responseTime":1,"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/75bfbe9f-890b-418b-a64e-4c5fc762a0b4"}}},"level":"info","message":"received a callback","requestID":"3ee51a155dad954e013517aa5165c177"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F75bfbe9f-890b-418b-a64e-4c5fc762a0b4': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F75bfbe9f-890b-418b-a64e-4c5fc762a0b4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"9bb63f80-aa5f-418d-bdb3-7758d1c7c919","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616014.9086297} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2314e3ca-ea2d-43f4-96da-36eaacf17611","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616014.9091544} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"0803deb0-50ec-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"75bfbe9f-890b-418b-a64e-4c5fc762a0b4","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"0803deb0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/75bfbe9f-890b-418b-a64e-4c5fc762a0b4 204 51ms","method":"DELETE","requestID":"0803deb0-50ec-11ef-8434-2f6d198c7397","responseTime":51,"status":204,"url":"/peerconnections/75bfbe9f-890b-418b-a64e-4c5fc762a0b4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c56a493-35fd-4235-8873-632cbf5ec66c"},"level":"info","message":"Successfully finished experiment","requestID":"3d4fe71d89b94837c5742ac6533cc4ff"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"080f0240-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1347,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:54Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F203ee6e9-95b4-4b8d-9648-6be20a2407d0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2633233c-2009-44a3-ace7-ea27ce45d44c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616014.9553845} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1347,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.093274,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"080f0240-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0","object_type":"device","rebac_allow":false,"scope_allow":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":"080f0240-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"080f0240-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0/signaling 200 14ms","method":"POST","requestID":"080f0240-50ec-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5c56a493-35fd-4235-8873-632cbf5ec66c': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5c56a493-35fd-4235-8873-632cbf5ec66c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"fe2d1b1a-0b5d-4622-8ca6-c4687c987d19","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616014.9629183} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae47fc7a-2b84-4d19-9c6d-7a1c3a3d942a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616014.9633784} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"3d4fe71d89b94837c5742ac6533cc4ff","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"08119a50-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1348,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:54Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb42ee9a4-5376-4077-bcc6-a13f0ed2a983","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6232da09-f414-42c6-88c5-a347eb5cae5d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616014.9713998} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1348,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.706929,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"08119a50-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983","object_type":"device","rebac_allow":false,"scope_allow":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":"08119a50-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"08119a50-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983/signaling 200 13ms","method":"POST","requestID":"08119a50-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/5c56a493-35fd-4235-8873-632cbf5ec66c","requestID":"3d4fe71d89b94837c5742ac6533cc4ff"} gateway-1 | {"time_local":"02/Aug/2024:16:26:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/5c56a493-35fd-4235-8873-632cbf5ec66c 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":"3d4fe71d89b94837c5742ac6533cc4ff"} gateway-1 | {"time_local":"02/Aug/2024:16:26:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3094","request_time":"2.686","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"8f593fa96dcdedfe8a826302f35e8f1a"} gateway-1 | {"time_local":"02/Aug/2024:16:26:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3092","request_time":"2.676","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"ee768c5cbae4f123a4e60b1d61bd33d1"} experiment-1 | {"level":"info","message":"DELETE /experiments/5c56a493-35fd-4235-8873-632cbf5ec66c 204 177ms","method":"DELETE","requestID":"3d4fe71d89b94837c5742ac6533cc4ff","responseTime":177,"status":204,"url":"/experiments/5c56a493-35fd-4235-8873-632cbf5ec66c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 135ms","method":"POST","requestID":"2afa111ab257ea23f4ccf95d1e24e3fe","responseTime":135,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:55 +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.139","http_referrer":"","http_user_agent":"node-fetch","requestID":"2afa111ab257ea23f4ccf95d1e24e3fe"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 134ms","method":"POST","requestID":"3ee51a155dad954e013517aa5165c177","responseTime":134,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:55 +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.140","http_referrer":"","http_user_agent":"node-fetch","requestID":"3ee51a155dad954e013517aa5165c177"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c","level":"info","message":"auth send jwt","requestID":"3d30eef42837121fe7f40f715fbab222"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3d30eef42837121fe7f40f715fbab222","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3d30eef42837121fe7f40f715fbab222"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/b42ee9a4-5376-4077-bcc6-a13f0ed2a983' closed"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1349,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1349,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.92736,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"3d30eef42837121fe7f40f715fbab222","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616015,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3d30eef42837121fe7f40f715fbab222","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/203ee6e9-95b4-4b8d-9648-6be20a2407d0' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54fff672-d0b8-4028-9c86-a2d788f92db4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9834651a-14ac-4553-bf53-247c34cc7e3a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.0654185} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3d30eef42837121fe7f40f715fbab222","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"98d3e767-de0b-4c2d-802c-03d1514502b0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.0705214} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"3d30eef42837121fe7f40f715fbab222","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54fff672-d0b8-4028-9c86-a2d788f92db4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"f0f07538-91f2-402f-b763-353b32eb5a6e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.0803792} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8765a70b-30f7-4f50-b81e-8daaeed15b64","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.081287} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"3d30eef42837121fe7f40f715fbab222","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54fff672-d0b8-4028-9c86-a2d788f92db4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54fff672-d0b8-4028-9c86-a2d788f92db4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:55.080129320Z"}]},"request_id":"4811cc02-365b-437c-a966-71f779dbbd6e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.0857365} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3d30eef42837121fe7f40f715fbab222","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3d30eef42837121fe7f40f715fbab222"} gateway-1 | {"time_local":"02/Aug/2024:16:26:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3d30eef42837121fe7f40f715fbab222"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"3d30eef42837121fe7f40f715fbab222","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c","level":"info","message":"auth send jwt","requestID":"c012aad5ff2df5ba3688568493acf37c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c012aad5ff2df5ba3688568493acf37c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c012aad5ff2df5ba3688568493acf37c"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1350,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1350,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.712161,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c012aad5ff2df5ba3688568493acf37c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616015,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c012aad5ff2df5ba3688568493acf37c","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5a5b097-c96a-403b-bb9a-ca220c6bbbf9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fee685e9-a0e6-4ce3-b183-bed85fd991b5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.1106613} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c012aad5ff2df5ba3688568493acf37c","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9f61d762-64dc-406d-b436-c10572d97e15","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.1157734} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c012aad5ff2df5ba3688568493acf37c","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5a5b097-c96a-403b-bb9a-ca220c6bbbf9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"52929847-3087-42df-97ba-6a14b8cf1129","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.1325204} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"67c0ea95-a86e-4848-9d13-96a319f97987","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.1325853} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"c012aad5ff2df5ba3688568493acf37c","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5a5b097-c96a-403b-bb9a-ca220c6bbbf9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5a5b097-c96a-403b-bb9a-ca220c6bbbf9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:55.132473109Z"}]},"request_id":"391a6278-1626-4df9-8bea-e76c2f1cfbbe","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.1369133} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c012aad5ff2df5ba3688568493acf37c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c012aad5ff2df5ba3688568493acf37c"} gateway-1 | {"time_local":"02/Aug/2024:16:26:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c012aad5ff2df5ba3688568493acf37c"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"c012aad5ff2df5ba3688568493acf37c","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c","level":"info","message":"auth send jwt","requestID":"947bbacce9d46dda225b858ea01c6e96"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"947bbacce9d46dda225b858ea01c6e96","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c","level":"info","message":"auth send jwt","requestID":"872bb5cccc4d7a754bc1c57ac2de70f0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"872bb5cccc4d7a754bc1c57ac2de70f0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"947bbacce9d46dda225b858ea01c6e96"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"872bb5cccc4d7a754bc1c57ac2de70f0"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1351,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1351,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.7012,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"947bbacce9d46dda225b858ea01c6e96","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616015,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"947bbacce9d46dda225b858ea01c6e96","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Received request.","req_id":1352,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Sent response.","req_id":1352,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.504712,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"872bb5cccc4d7a754bc1c57ac2de70f0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616015,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"872bb5cccc4d7a754bc1c57ac2de70f0","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5a5b097-c96a-403b-bb9a-ca220c6bbbf9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5a5b097-c96a-403b-bb9a-ca220c6bbbf9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:55.132473109Z"}]},"request_id":"4f948e70-26a2-4b00-9f4a-914e699c6da8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.650268} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"947bbacce9d46dda225b858ea01c6e96","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54fff672-d0b8-4028-9c86-a2d788f92db4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54fff672-d0b8-4028-9c86-a2d788f92db4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:55.080129320Z"}]},"request_id":"12890508-9ece-40c2-b3f1-5e9b7905c98c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.650813} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"872bb5cccc4d7a754bc1c57ac2de70f0","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c83a4f9b-b351-453f-b3e8-5d41e3b46d0d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.6548364} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"947bbacce9d46dda225b858ea01c6e96","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c73efe9a-2553-4f8f-a738-21812586b471","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.6569073} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"872bb5cccc4d7a754bc1c57ac2de70f0","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54fff672-d0b8-4028-9c86-a2d788f92db4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54fff672-d0b8-4028-9c86-a2d788f92db4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:55.080129320Z"}]},"request_id":"0ea99592-55d1-4088-a838-36892ca15a6e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.6608775} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"872bb5cccc4d7a754bc1c57ac2de70f0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"872bb5cccc4d7a754bc1c57ac2de70f0"} gateway-1 | {"time_local":"02/Aug/2024:16:26:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/54fff672-d0b8-4028-9c86-a2d788f92db4 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.028","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"872bb5cccc4d7a754bc1c57ac2de70f0"} device-1 | {"level":"info","message":"PATCH /devices/54fff672-d0b8-4028-9c86-a2d788f92db4 200 21ms","method":"PATCH","requestID":"872bb5cccc4d7a754bc1c57ac2de70f0","responseTime":21,"status":200,"url":"/devices/54fff672-d0b8-4028-9c86-a2d788f92db4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c","level":"info","message":"auth send jwt","requestID":"cbf40f06ccb84a4568b6fbcc984edb11"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"cbf40f06ccb84a4568b6fbcc984edb11","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"cbf40f06ccb84a4568b6fbcc984edb11"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1353,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1353,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.87548,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cbf40f06ccb84a4568b6fbcc984edb11","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616015,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cbf40f06ccb84a4568b6fbcc984edb11","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5a5b097-c96a-403b-bb9a-ca220c6bbbf9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5a5b097-c96a-403b-bb9a-ca220c6bbbf9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:55.132473109Z"}]},"request_id":"23baa130-b51a-4131-9237-b16ed9c61f9d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.6712568} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"947bbacce9d46dda225b858ea01c6e96","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"947bbacce9d46dda225b858ea01c6e96"} device-1 | {"level":"info","message":"PATCH /devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9 200 35ms","method":"PATCH","requestID":"947bbacce9d46dda225b858ea01c6e96","responseTime":35,"status":200,"url":"/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9"} gateway-1 | {"time_local":"02/Aug/2024:16:26:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"947bbacce9d46dda225b858ea01c6e96"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c","level":"info","message":"auth send jwt","requestID":"de6d814cdeb11145cf2c25bbe22f6ee0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"de6d814cdeb11145cf2c25bbe22f6ee0","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"de6d814cdeb11145cf2c25bbe22f6ee0"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1354,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1354,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.41218,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"de6d814cdeb11145cf2c25bbe22f6ee0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616015,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"de6d814cdeb11145cf2c25bbe22f6ee0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"cbf40f06ccb84a4568b6fbcc984edb11"} gateway-1 | {"time_local":"02/Aug/2024:16:26:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/54fff672-d0b8-4028-9c86-a2d788f92db4/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"cbf40f06ccb84a4568b6fbcc984edb11"} device-1 | {"level":"info","message":"POST /devices/54fff672-d0b8-4028-9c86-a2d788f92db4/websocket 200 19ms","method":"POST","requestID":"cbf40f06ccb84a4568b6fbcc984edb11","responseTime":19,"status":200,"url":"/devices/54fff672-d0b8-4028-9c86-a2d788f92db4/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"de6d814cdeb11145cf2c25bbe22f6ee0"} device-1 | {"level":"info","message":"POST /devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9/websocket 200 16ms","method":"POST","requestID":"de6d814cdeb11145cf2c25bbe22f6ee0","responseTime":16,"status":200,"url":"/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:26:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.019","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"de6d814cdeb11145cf2c25bbe22f6ee0"} device-1 | {"level":"info","message":"device 'http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c","level":"info","message":"auth send jwt","requestID":"0028fca0f09d90d15b9ed0a45cd5203d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0028fca0f09d90d15b9ed0a45cd5203d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0028fca0f09d90d15b9ed0a45cd5203d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1355,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1355,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.724212,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0028fca0f09d90d15b9ed0a45cd5203d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616015,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0028fca0f09d90d15b9ed0a45cd5203d","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54fff672-d0b8-4028-9c86-a2d788f92db4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54fff672-d0b8-4028-9c86-a2d788f92db4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:55.080129320Z"}]},"request_id":"a804d05f-856e-466f-8023-3bd6fd4db34a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.7282841} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0028fca0f09d90d15b9ed0a45cd5203d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0028fca0f09d90d15b9ed0a45cd5203d"} gateway-1 | {"time_local":"02/Aug/2024:16:26:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/54fff672-d0b8-4028-9c86-a2d788f92db4? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0028fca0f09d90d15b9ed0a45cd5203d"} device-1 | {"level":"info","message":"GET /devices/54fff672-d0b8-4028-9c86-a2d788f92db4? 200 11ms","method":"GET","requestID":"0028fca0f09d90d15b9ed0a45cd5203d","responseTime":11,"status":200,"url":"/devices/54fff672-d0b8-4028-9c86-a2d788f92db4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c","level":"info","message":"auth send jwt","requestID":"c22d4f142670b9be6296ddb21ab2d7eb"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c22d4f142670b9be6296ddb21ab2d7eb","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c22d4f142670b9be6296ddb21ab2d7eb"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1356,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1356,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.824447,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c22d4f142670b9be6296ddb21ab2d7eb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616015,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"c22d4f142670b9be6296ddb21ab2d7eb","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5a5b097-c96a-403b-bb9a-ca220c6bbbf9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5a5b097-c96a-403b-bb9a-ca220c6bbbf9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:55.132473109Z"}]},"request_id":"7102af9a-a69c-44d4-862a-d3911e868071","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.7445242} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c22d4f142670b9be6296ddb21ab2d7eb","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c22d4f142670b9be6296ddb21ab2d7eb"} device-1 | {"level":"info","message":"GET /devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9? 200 12ms","method":"GET","requestID":"c22d4f142670b9be6296ddb21ab2d7eb","responseTime":12,"status":200,"url":"/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9?"} gateway-1 | {"time_local":"02/Aug/2024:16:26:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c22d4f142670b9be6296ddb21ab2d7eb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c","level":"info","message":"auth send jwt","requestID":"2e891852d5f19b44ef0e8490c8e853b5"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2e891852d5f19b44ef0e8490c8e853b5","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"2e891852d5f19b44ef0e8490c8e853b5"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1357,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1357,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.813465,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"2e891852d5f19b44ef0e8490c8e853b5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616015,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2e891852d5f19b44ef0e8490c8e853b5","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a7709c4-2f81-4606-8b82-c75c269fb466"},"level":"info","message":"Attempting to run experiment","requestID":"2e891852d5f19b44ef0e8490c8e853b5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a7709c4-2f81-4606-8b82-c75c269fb466"},"level":"info","message":"Attempting to book experiment","requestID":"2e891852d5f19b44ef0e8490c8e853b5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a7709c4-2f81-4606-8b82-c75c269fb466"},"level":"info","message":"Successfully booked experiment","requestID":"2e891852d5f19b44ef0e8490c8e853b5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"088e4460-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"088e6b70-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1358,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Received request.","req_id":1359,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1358,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.630042,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"088e4460-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616015,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"088e4460-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Sent response.","req_id":1359,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.640543,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"088e6b70-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616015,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"088e6b70-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54fff672-d0b8-4028-9c86-a2d788f92db4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54fff672-d0b8-4028-9c86-a2d788f92db4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:55.080129320Z"}]},"request_id":"02711392-4d61-4ee8-94d1-8b090354f281","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.788977} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"088e4460-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5a5b097-c96a-403b-bb9a-ca220c6bbbf9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5a5b097-c96a-403b-bb9a-ca220c6bbbf9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:55.132473109Z"}]},"request_id":"3e977ff3-e3c4-41e1-81b9-ba8a9bdae3e9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.78958} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"088e6b70-50ec-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"088e4460-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/54fff672-d0b8-4028-9c86-a2d788f92db4? 200 13ms","method":"GET","requestID":"088e4460-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/54fff672-d0b8-4028-9c86-a2d788f92db4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"088e6b70-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9? 200 13ms","method":"GET","requestID":"088e6b70-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a7709c4-2f81-4606-8b82-c75c269fb466"},"level":"info","message":"Setting up experiment","requestID":"2e891852d5f19b44ef0e8490c8e853b5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a7709c4-2f81-4606-8b82-c75c269fb466"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"2e891852d5f19b44ef0e8490c8e853b5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a7709c4-2f81-4606-8b82-c75c269fb466"},"level":"info","message":"Successfully locked booking for experiment","requestID":"2e891852d5f19b44ef0e8490c8e853b5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a7709c4-2f81-4606-8b82-c75c269fb466"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"2e891852d5f19b44ef0e8490c8e853b5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a7709c4-2f81-4606-8b82-c75c269fb466"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"2e891852d5f19b44ef0e8490c8e853b5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a7709c4-2f81-4606-8b82-c75c269fb466"},"level":"info","message":"Attempting to update booking for experiment","requestID":"2e891852d5f19b44ef0e8490c8e853b5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a7709c4-2f81-4606-8b82-c75c269fb466"},"level":"info","message":"Successfully updated booking for experiment","requestID":"2e891852d5f19b44ef0e8490c8e853b5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a7709c4-2f81-4606-8b82-c75c269fb466"},"level":"info","message":"Successfully set up experiment","requestID":"2e891852d5f19b44ef0e8490c8e853b5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"08974510-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"08979330-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0897e150-50ec-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a7709c4-2f81-4606-8b82-c75c269fb466"},"level":"info","message":"Successfully running experiment","requestID":"2e891852d5f19b44ef0e8490c8e853b5"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1360,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1360,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.920984,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"08974510-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616015,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"08974510-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Received request.","req_id":1361,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Sent response.","req_id":1361,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.131272,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"08979330-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616015,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"08979330-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56948","level":"info","msg":"Received request.","req_id":1362,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26: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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54fff672-d0b8-4028-9c86-a2d788f92db4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54fff672-d0b8-4028-9c86-a2d788f92db4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:55.080129320Z"}]},"request_id":"aef4e7c9-6e3b-4aee-814d-45f323835acb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.856854} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54fff672-d0b8-4028-9c86-a2d788f92db4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"72ae6ed6-5858-4bce-a86d-6d8bce63904e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.857185} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"08974510-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5a5b097-c96a-403b-bb9a-ca220c6bbbf9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5a5b097-c96a-403b-bb9a-ca220c6bbbf9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:55.132473109Z"}]},"request_id":"8c3edfd9-0b84-4b96-8f6c-9aea180cc435","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.8579986} authorization-1 | {"client_addr":"127.0.0.1:56948","level":"info","msg":"Sent response.","req_id":1362,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.323889,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0897e150-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4","object_type":"device","rebac_allow":false,"scope_allow":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":"0897e150-50ec-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"08979330-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0897e150-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/54fff672-d0b8-4028-9c86-a2d788f92db4/signaling 200 20ms","method":"POST","requestID":"0897e150-50ec-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/54fff672-d0b8-4028-9c86-a2d788f92db4/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"08974510-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/54fff672-d0b8-4028-9c86-a2d788f92db4? 200 25ms","method":"GET","requestID":"08974510-50ec-11ef-8434-2f6d198c7397","responseTime":25,"status":200,"url":"/devices/54fff672-d0b8-4028-9c86-a2d788f92db4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"08979330-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9? 200 24ms","method":"GET","requestID":"08979330-50ec-11ef-8434-2f6d198c7397","responseTime":24,"status":200,"url":"/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"089b63c0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"089bd8f0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8a7709c4-2f81-4606-8b82-c75c269fb466#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8a7709c4-2f81-4606-8b82-c75c269fb466","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"e1789b5c-5341-4ce5-8cd6-92a7172b0814","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.8707037} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ef8ee449-ce5e-438f-ac7b-a808b7519e3b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.8712156} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1363,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"2e891852d5f19b44ef0e8490c8e853b5","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1363,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.828837,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Received request.","req_id":1364,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5a5b097-c96a-403b-bb9a-ca220c6bbbf9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bb1de294-4057-4eb8-b1fd-fd9bf4a93ca1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.8744407} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"089b63c0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","object_type":"device","rebac_allow":false,"scope_allow":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":"089b63c0-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54fff672-d0b8-4028-9c86-a2d788f92db4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ba695f8f-8c4a-4b83-a3f5-8b4b454677b8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.8775103} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Sent response.","req_id":1364,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.111695,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"089bd8f0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4","object_type":"device","rebac_allow":false,"scope_allow":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":"089bd8f0-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"089b63c0-50ec-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/8a7709c4-2f81-4606-8b82-c75c269fb466","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"2e891852d5f19b44ef0e8490c8e853b5"} device-1 | {"level":"info","message":"POST /devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9/signaling 200 12ms","method":"POST","requestID":"089b63c0-50ec-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9/signaling"} gateway-1 | {"time_local":"02/Aug/2024:16:26:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1220","request_time":"0.132","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2e891852d5f19b44ef0e8490c8e853b5"} experiment-1 | {"level":"info","message":"POST /experiments? 201 128ms","method":"POST","requestID":"2e891852d5f19b44ef0e8490c8e853b5","responseTime":128,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"089bd8f0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/54fff672-d0b8-4028-9c86-a2d788f92db4/signaling 200 13ms","method":"POST","requestID":"089bd8f0-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/54fff672-d0b8-4028-9c86-a2d788f92db4/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c","level":"info","message":"auth send jwt","requestID":"db549c4bed867ac872642874a15dffa7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"db549c4bed867ac872642874a15dffa7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"089e49f0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"db549c4bed867ac872642874a15dffa7"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1365,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Received request.","req_id":1366,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Sent response.","req_id":1366,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.724848,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"db549c4bed867ac872642874a15dffa7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616015,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"db549c4bed867ac872642874a15dffa7","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5a5b097-c96a-403b-bb9a-ca220c6bbbf9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"128ee330-e65f-45ff-846c-0ee1f0d97590","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.8926737} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1365,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.01972,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"089e49f0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","object_type":"device","rebac_allow":false,"scope_allow":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":"089e49f0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54fff672-d0b8-4028-9c86-a2d788f92db4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54fff672-d0b8-4028-9c86-a2d788f92db4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:55.080129320Z"}]},"request_id":"f2fd4a8c-0f74-42fb-8889-b8c2f78fa9bb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.8972464} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"db549c4bed867ac872642874a15dffa7","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"089e49f0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9/signaling 200 12ms","method":"POST","requestID":"089e49f0-50ec-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a7709c4-2f81-4606-8b82-c75c269fb466"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"2e891852d5f19b44ef0e8490c8e853b5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"08a06cd0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"08a0baf0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1367,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1367,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.671064,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:55Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"db549c4bed867ac872642874a15dffa7"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"08a06cd0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616015,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"08a06cd0-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:26:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/54fff672-d0b8-4028-9c86-a2d788f92db4? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"db549c4bed867ac872642874a15dffa7"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Received request.","req_id":1368,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:55Z"} device-1 | {"level":"info","message":"GET /devices/54fff672-d0b8-4028-9c86-a2d788f92db4? 200 18ms","method":"GET","requestID":"db549c4bed867ac872642874a15dffa7","responseTime":18,"status":200,"url":"/devices/54fff672-d0b8-4028-9c86-a2d788f92db4?"} authorization-1 | {"client_addr":"127.0.0.1:57062","level":"info","msg":"Sent response.","req_id":1368,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.869439,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"08a0baf0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616015,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"08a0baf0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54fff672-d0b8-4028-9c86-a2d788f92db4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54fff672-d0b8-4028-9c86-a2d788f92db4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:55.080129320Z"}]},"request_id":"7d8b4737-4e1b-4ca8-9d2c-7f9f7a2396d1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.9103518} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c","level":"info","message":"auth send jwt","requestID":"cd26618c58c5ce0feb451396d555b3f7"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"08a06cd0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cd26618c58c5ce0feb451396d555b3f7","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5a5b097-c96a-403b-bb9a-ca220c6bbbf9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5a5b097-c96a-403b-bb9a-ca220c6bbbf9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:55.132473109Z"}]},"request_id":"fe38269d-9009-46d5-a146-bf00d91078c4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.91147} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"08a0baf0-50ec-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cd26618c58c5ce0feb451396d555b3f7"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1369,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:55Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"08a06cd0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1369,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.768466,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:55Z"} device-1 | {"level":"info","message":"GET /devices/54fff672-d0b8-4028-9c86-a2d788f92db4? 200 17ms","method":"GET","requestID":"08a06cd0-50ec-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/54fff672-d0b8-4028-9c86-a2d788f92db4?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cd26618c58c5ce0feb451396d555b3f7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616015,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"08a0baf0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cd26618c58c5ce0feb451396d555b3f7","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9? 200 16ms","method":"GET","requestID":"08a0baf0-50ec-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a7709c4-2f81-4606-8b82-c75c269fb466"},"level":"info","message":"Building connection plan","requestID":"2e891852d5f19b44ef0e8490c8e853b5"} 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":"9a465ec5-6e3a-41f2-b73f-3c0ca98e951c"},{"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":"27e1a4b8-4d4b-4aae-9723-c9e587debd45"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"d18f585f-d419-4352-b9bc-fc6d36c363c8"}]},"level":"info","message":"Built pairwise service configurations","requestID":"2e891852d5f19b44ef0e8490c8e853b5"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"2e891852d5f19b44ef0e8490c8e853b5"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"08a37a10-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5a5b097-c96a-403b-bb9a-ca220c6bbbf9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5a5b097-c96a-403b-bb9a-ca220c6bbbf9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:55.132473109Z"}]},"request_id":"ddcaa4a5-ba86-4605-832c-e98627f5c510","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.922382} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cd26618c58c5ce0feb451396d555b3f7","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1370,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1370,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.644877,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"08a37a10-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616015,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxNX0.GKPm-jBO2jXRebf7hX0YAA06QXlaJRg15j5IhjaCR3c"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"08a37a10-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cd26618c58c5ce0feb451396d555b3f7"} gateway-1 | {"time_local":"02/Aug/2024:16:26:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cd26618c58c5ce0feb451396d555b3f7"} device-1 | {"level":"info","message":"GET /devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9? 200 14ms","method":"GET","requestID":"cd26618c58c5ce0feb451396d555b3f7","responseTime":14,"status":200,"url":"/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9?"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"3b49247f-28d5-40af-a732-dacc043b6f51","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.9334111} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dab730b3-1695-4788-9b92-09c13e49002b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.9336576} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"08a37a10-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"08a37a10-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"08a37a10-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/dffb7520-37c6-4e72-88ae-e4841c416548'","requestID":"08a37a10-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/dffb7520-37c6-4e72-88ae-e4841c416548'","requestID":"08a37a10-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"08a37a10-50ec-11ef-8434-2f6d198c7397"} 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":"08a37a10-50ec-11ef-8434-2f6d198c7397","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":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"08a37a10-50ec-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a7709c4-2f81-4606-8b82-c75c269fb466"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"2e891852d5f19b44ef0e8490c8e853b5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"08aaf420-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1371,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54fff672-d0b8-4028-9c86-a2d788f92db4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"332ac815-347e-469f-b3bd-3443e7ec363a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.9755692} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1371,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.928457,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"08aaf420-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4","object_type":"device","rebac_allow":false,"scope_allow":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":"08aaf420-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"08aaf420-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/54fff672-d0b8-4028-9c86-a2d788f92db4/signaling 200 9ms","method":"POST","requestID":"08aaf420-50ec-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/54fff672-d0b8-4028-9c86-a2d788f92db4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"08acc8e0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1372,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5a5b097-c96a-403b-bb9a-ca220c6bbbf9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b46d4b47-d4b2-46e4-88e8-88de0a809aab","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616015.9872684} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1372,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.20462,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"08acc8e0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","object_type":"device","rebac_allow":false,"scope_allow":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":"08acc8e0-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"08acc8e0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9/signaling 200 10ms","method":"POST","requestID":"08acc8e0-50ec-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9/signaling"} device-1 | {"device":"f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"dffb7520-37c6-4e72-88ae-e4841c416548","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"54fff672-d0b8-4028-9c86-a2d788f92db4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"dffb7520-37c6-4e72-88ae-e4841c416548","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"54fff672-d0b8-4028-9c86-a2d788f92db4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"54fff672-d0b8-4028-9c86-a2d788f92db4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"54fff672-d0b8-4028-9c86-a2d788f92db4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"54fff672-d0b8-4028-9c86-a2d788f92db4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/dffb7520-37c6-4e72-88ae-e4841c416548' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"dffb7520-37c6-4e72-88ae-e4841c416548","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6afe697fc11019c94cdb91b87cd04cf4","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":"6afe697fc11019c94cdb91b87cd04cf4","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","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/dffb7520-37c6-4e72-88ae-e4841c416548"}}},"level":"info","message":"received a callback","requestID":"6afe697fc11019c94cdb91b87cd04cf4"} device-1 | {"device":"f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"6afe697fc11019c94cdb91b87cd04cf4","responseTime":9,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} gateway-1 | {"time_local":"02/Aug/2024:16:26:58 +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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"6afe697fc11019c94cdb91b87cd04cf4"} device-1 | {"data":{"peerconnection":"dffb7520-37c6-4e72-88ae-e4841c416548","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"54fff672-d0b8-4028-9c86-a2d788f92db4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"54fff672-d0b8-4028-9c86-a2d788f92db4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"dffb7520-37c6-4e72-88ae-e4841c416548","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/dffb7520-37c6-4e72-88ae-e4841c416548' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"dffb7520-37c6-4e72-88ae-e4841c416548","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"146c3e063fd1f20395432ed6e17b49e4","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":"146c3e063fd1f20395432ed6e17b49e4","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/dffb7520-37c6-4e72-88ae-e4841c416548"}}},"level":"info","message":"received a callback","requestID":"146c3e063fd1f20395432ed6e17b49e4"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"09e98ea0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1373,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:58Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdffb7520-37c6-4e72-88ae-e4841c416548","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2d03ef75-52a0-4b5c-a7bf-904d6098f1f0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616018.0646977} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1373,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.488608,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/dffb7520-37c6-4e72-88ae-e4841c416548","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"09e98ea0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/dffb7520-37c6-4e72-88ae-e4841c416548","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":"09e98ea0-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"09e98ea0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/dffb7520-37c6-4e72-88ae-e4841c416548 200 12ms","method":"GET","requestID":"09e98ea0-50ec-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/peerconnections/dffb7520-37c6-4e72-88ae-e4841c416548"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 40ms","method":"POST","requestID":"146c3e063fd1f20395432ed6e17b49e4","responseTime":40,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:58 +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.044","http_referrer":"","http_user_agent":"node-fetch","requestID":"146c3e063fd1f20395432ed6e17b49e4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"09eebec0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1374,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:58Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54fff672-d0b8-4028-9c86-a2d788f92db4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7b1db30f-2004-4d69-a676-ee2190fa5b08","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616018.0975804} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1374,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.917941,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"09eebec0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4","object_type":"device","rebac_allow":false,"scope_allow":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":"09eebec0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"09eebec0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/54fff672-d0b8-4028-9c86-a2d788f92db4/signaling 200 11ms","method":"POST","requestID":"09eebec0-50ec-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/54fff672-d0b8-4028-9c86-a2d788f92db4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"09f0e1a0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1375,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:58Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5a5b097-c96a-403b-bb9a-ca220c6bbbf9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3210b896-29ce-4d83-9802-4229782a8aec","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616018.1117337} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1375,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.435731,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"09f0e1a0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","object_type":"device","rebac_allow":false,"scope_allow":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":"09f0e1a0-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"09f0e1a0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9/signaling 200 13ms","method":"POST","requestID":"09f0e1a0-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxOH0.6-dSv8MWBcgxf7S2IviwnFA7p7HDDiOeERDfIO_t4N4","level":"info","message":"auth send jwt","requestID":"f5f743b66b3bc638605875b43a04f894"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f5f743b66b3bc638605875b43a04f894","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/8a7709c4-2f81-4606-8b82-c75c269fb466","requestID":"f5f743b66b3bc638605875b43a04f894"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1376,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1376,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.305023,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8a7709c4-2f81-4606-8b82-c75c269fb466","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f5f743b66b3bc638605875b43a04f894","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/8a7709c4-2f81-4606-8b82-c75c269fb466","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616018,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxOH0.6-dSv8MWBcgxf7S2IviwnFA7p7HDDiOeERDfIO_t4N4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f5f743b66b3bc638605875b43a04f894","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/8a7709c4-2f81-4606-8b82-c75c269fb466","requestID":"f5f743b66b3bc638605875b43a04f894"} gateway-1 | {"time_local":"02/Aug/2024:16:26:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/8a7709c4-2f81-4606-8b82-c75c269fb466 HTTP/1.1","status": "200","body_bytes_sent":"1293","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f5f743b66b3bc638605875b43a04f894"} experiment-1 | {"level":"info","message":"GET /experiments/8a7709c4-2f81-4606-8b82-c75c269fb466 200 14ms","method":"GET","requestID":"f5f743b66b3bc638605875b43a04f894","responseTime":14,"status":200,"url":"/experiments/8a7709c4-2f81-4606-8b82-c75c269fb466"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxOH0.6-dSv8MWBcgxf7S2IviwnFA7p7HDDiOeERDfIO_t4N4","level":"info","message":"auth send jwt","requestID":"9c2e2aa732b3579fa6bdaa7e4fa064c6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9c2e2aa732b3579fa6bdaa7e4fa064c6","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/8a7709c4-2f81-4606-8b82-c75c269fb466","requestID":"9c2e2aa732b3579fa6bdaa7e4fa064c6"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1377,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1377,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.221792,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:58Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8a7709c4-2f81-4606-8b82-c75c269fb466","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"9c2e2aa732b3579fa6bdaa7e4fa064c6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/8a7709c4-2f81-4606-8b82-c75c269fb466","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616018,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxOH0.6-dSv8MWBcgxf7S2IviwnFA7p7HDDiOeERDfIO_t4N4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9c2e2aa732b3579fa6bdaa7e4fa064c6","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a7709c4-2f81-4606-8b82-c75c269fb466"},"level":"info","message":"Attempting to finish experiment","requestID":"9c2e2aa732b3579fa6bdaa7e4fa064c6"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"09fd16a0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1378,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1378,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.248178,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:58Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/dffb7520-37c6-4e72-88ae-e4841c416548","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"09fd16a0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/dffb7520-37c6-4e72-88ae-e4841c416548","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616018,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxOH0.6-dSv8MWBcgxf7S2IviwnFA7p7HDDiOeERDfIO_t4N4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"09fd16a0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"device":"f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"54fff672-d0b8-4028-9c86-a2d788f92db4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"54fff672-d0b8-4028-9c86-a2d788f92db4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"54fff672-d0b8-4028-9c86-a2d788f92db4","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/dffb7520-37c6-4e72-88ae-e4841c416548' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/dffb7520-37c6-4e72-88ae-e4841c416548' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"dffb7520-37c6-4e72-88ae-e4841c416548","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdffb7520-37c6-4e72-88ae-e4841c416548': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdffb7520-37c6-4e72-88ae-e4841c416548","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"01b7ee2b-e790-4445-9fc5-09a9a83e9ab4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616018.211248} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b93d3fd4-1d02-44de-9dda-f17a5d65e703","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616018.2118835} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"09fd16a0-50ec-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9d0188fa26d02b0c8dfac09dfbe3da9e","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":"9d0188fa26d02b0c8dfac09dfbe3da9e","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cdfd229fafee5d8dd765d7c338b1b8c0","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/dffb7520-37c6-4e72-88ae-e4841c416548"}}},"level":"info","message":"received a callback","requestID":"9d0188fa26d02b0c8dfac09dfbe3da9e"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"cdfd229fafee5d8dd765d7c338b1b8c0","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/dffb7520-37c6-4e72-88ae-e4841c416548"}}},"level":"info","message":"received a callback","requestID":"cdfd229fafee5d8dd765d7c338b1b8c0"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"09fd16a0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/dffb7520-37c6-4e72-88ae-e4841c416548 204 49ms","method":"DELETE","requestID":"09fd16a0-50ec-11ef-8434-2f6d198c7397","responseTime":49,"status":204,"url":"/peerconnections/dffb7520-37c6-4e72-88ae-e4841c416548"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8a7709c4-2f81-4606-8b82-c75c269fb466"},"level":"info","message":"Successfully finished experiment","requestID":"9c2e2aa732b3579fa6bdaa7e4fa064c6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0a07ec10-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1379,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:58Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54fff672-d0b8-4028-9c86-a2d788f92db4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a2bb015a-736c-44d7-be96-a96a302c9015","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616018.2640176} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1379,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.84771,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0a07ec10-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/54fff672-d0b8-4028-9c86-a2d788f92db4","object_type":"device","rebac_allow":false,"scope_allow":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":"0a07ec10-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8a7709c4-2f81-4606-8b82-c75c269fb466': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8a7709c4-2f81-4606-8b82-c75c269fb466","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"afbc78fd-dd74-4473-92fa-8d4b383536b8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616018.2711794} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0a07ec10-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/54fff672-d0b8-4028-9c86-a2d788f92db4/signaling 200 15ms","method":"POST","requestID":"0a07ec10-50ec-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/54fff672-d0b8-4028-9c86-a2d788f92db4/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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8f27c67d-3310-43d6-94a6-4c5d1b317924","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616018.2716007} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"9c2e2aa732b3579fa6bdaa7e4fa064c6","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0a0aab30-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1380,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:58Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5a5b097-c96a-403b-bb9a-ca220c6bbbf9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"83bd090a-a7d6-4fe5-854e-629648932992","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616018.2817144} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1380,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.892624,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0a0aab30-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9","object_type":"device","rebac_allow":false,"scope_allow":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":"0a0aab30-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0a0aab30-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9/signaling 200 14ms","method":"POST","requestID":"0a0aab30-50ec-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/8a7709c4-2f81-4606-8b82-c75c269fb466","requestID":"9c2e2aa732b3579fa6bdaa7e4fa064c6"} gateway-1 | {"time_local":"02/Aug/2024:16:26:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/8a7709c4-2f81-4606-8b82-c75c269fb466 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.178","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9c2e2aa732b3579fa6bdaa7e4fa064c6"} gateway-1 | {"time_local":"02/Aug/2024:16:26:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3094","request_time":"2.657","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"c128888bcd5c5379d7c35e1fac5bbc4c"} experiment-1 | {"level":"info","message":"DELETE /experiments/8a7709c4-2f81-4606-8b82-c75c269fb466 204 174ms","method":"DELETE","requestID":"9c2e2aa732b3579fa6bdaa7e4fa064c6","responseTime":174,"status":204,"url":"/experiments/8a7709c4-2f81-4606-8b82-c75c269fb466"} gateway-1 | {"time_local":"02/Aug/2024:16:26:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3092","request_time":"2.649","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"0e8683ed2a685c16d8ad0418da0bb9c6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"9d0188fa26d02b0c8dfac09dfbe3da9e","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:58 +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":"9d0188fa26d02b0c8dfac09dfbe3da9e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"cdfd229fafee5d8dd765d7c338b1b8c0","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:26:58 +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":"cdfd229fafee5d8dd765d7c338b1b8c0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxOH0.6-dSv8MWBcgxf7S2IviwnFA7p7HDDiOeERDfIO_t4N4","level":"info","message":"auth send jwt","requestID":"1b5a302dc4a4e526908b7a39c1531fcc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1b5a302dc4a4e526908b7a39c1531fcc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1b5a302dc4a4e526908b7a39c1531fcc"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f5a5b097-c96a-403b-bb9a-ca220c6bbbf9' closed"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1381,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1381,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.946262,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1b5a302dc4a4e526908b7a39c1531fcc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616018,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxOH0.6-dSv8MWBcgxf7S2IviwnFA7p7HDDiOeERDfIO_t4N4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1b5a302dc4a4e526908b7a39c1531fcc","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/54fff672-d0b8-4028-9c86-a2d788f92db4' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5db24ce-9904-4d5f-b5e5-2256df342389","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0dfbdf2d-c35b-474d-92a0-be5fc3f6b38e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616018.373378} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1b5a302dc4a4e526908b7a39c1531fcc","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e5daa226-4e88-4eb4-8114-9fb47651d85b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616018.3784049} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"1b5a302dc4a4e526908b7a39c1531fcc","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5db24ce-9904-4d5f-b5e5-2256df342389","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"e381976e-1178-4082-95ae-0d4cbf8aea8c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616018.387925} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d2371d90-400f-4343-bf6d-8910d37f84e9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616018.3881521} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"1b5a302dc4a4e526908b7a39c1531fcc","responseTime":12,"status":200,"url":"/relations/update"} gateway-1 | {"time_local":"02/Aug/2024:16:26:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1b5a302dc4a4e526908b7a39c1531fcc"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1b5a302dc4a4e526908b7a39c1531fcc"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5db24ce-9904-4d5f-b5e5-2256df342389","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5db24ce-9904-4d5f-b5e5-2256df342389","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:58.387871248Z"}]},"request_id":"44dfbb73-7aa3-45a4-b80f-ac00a93c16b0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616018.392783} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1b5a302dc4a4e526908b7a39c1531fcc","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"1b5a302dc4a4e526908b7a39c1531fcc","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxOH0.6-dSv8MWBcgxf7S2IviwnFA7p7HDDiOeERDfIO_t4N4","level":"info","message":"auth send jwt","requestID":"16ac93c45bd7507573c70ae098ad5c9b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"16ac93c45bd7507573c70ae098ad5c9b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"16ac93c45bd7507573c70ae098ad5c9b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1382,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:26:58Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1382,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.753411,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:26:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"16ac93c45bd7507573c70ae098ad5c9b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616018,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAxOH0.6-dSv8MWBcgxf7S2IviwnFA7p7HDDiOeERDfIO_t4N4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"16ac93c45bd7507573c70ae098ad5c9b","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15404ca0-c16a-4586-bb4b-c32d65121561","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1a16f076-7018-4424-b8c4-7ef5d8e556c3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616018.4227226} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"16ac93c45bd7507573c70ae098ad5c9b","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8bbca08b-df97-4e17-8a43-6e845def3574","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616018.4290247} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"16ac93c45bd7507573c70ae098ad5c9b","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15404ca0-c16a-4586-bb4b-c32d65121561","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"c78d8fbf-cebc-4f7b-87c7-93fef0f39376","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616018.439146} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"37bb6a8b-a52e-4c44-88fb-6d90c05d66c9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616018.4394133} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"16ac93c45bd7507573c70ae098ad5c9b","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15404ca0-c16a-4586-bb4b-c32d65121561","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15404ca0-c16a-4586-bb4b-c32d65121561","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:58.439111089Z"}]},"request_id":"95685f8a-1cae-48d5-9633-7a76c2576bb4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616018.4442728} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"16ac93c45bd7507573c70ae098ad5c9b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"16ac93c45bd7507573c70ae098ad5c9b"} gateway-1 | {"time_local":"02/Aug/2024:16:26:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"16ac93c45bd7507573c70ae098ad5c9b"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"16ac93c45bd7507573c70ae098ad5c9b","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"65b75d2be1b4cee331e22c20781a1306","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":"65b75d2be1b4cee331e22c20781a1306","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:27:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e5db24ce-9904-4d5f-b5e5-2256df342389/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":"65b75d2be1b4cee331e22c20781a1306"} device-1 | {"level":"info","message":"OPTIONS /devices/e5db24ce-9904-4d5f-b5e5-2256df342389/websocket 200 1ms","method":"OPTIONS","requestID":"65b75d2be1b4cee331e22c20781a1306","responseTime":1,"status":200,"url":"/devices/e5db24ce-9904-4d5f-b5e5-2256df342389/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs","level":"info","message":"auth send jwt","requestID":"0d5f221e9ad9d790fcc17b82b3ddfa62"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0d5f221e9ad9d790fcc17b82b3ddfa62","responseTime":5,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4d5ab73be4e2307bd94440aad8cdee50","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)"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0d5f221e9ad9d790fcc17b82b3ddfa62"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4d5ab73be4e2307bd94440aad8cdee50","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:27:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/15404ca0-c16a-4586-bb4b-c32d65121561/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.007","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":"4d5ab73be4e2307bd94440aad8cdee50"} device-1 | {"level":"info","message":"OPTIONS /devices/15404ca0-c16a-4586-bb4b-c32d65121561/websocket 200 1ms","method":"OPTIONS","requestID":"4d5ab73be4e2307bd94440aad8cdee50","responseTime":1,"status":200,"url":"/devices/15404ca0-c16a-4586-bb4b-c32d65121561/websocket"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1383,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1383,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.210205,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0d5f221e9ad9d790fcc17b82b3ddfa62","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616020,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0d5f221e9ad9d790fcc17b82b3ddfa62","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs","level":"info","message":"auth send jwt","requestID":"49824b77d370ceafdef1ab1c7782cbf7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"49824b77d370ceafdef1ab1c7782cbf7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"49824b77d370ceafdef1ab1c7782cbf7"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1384,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1384,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.770843,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"49824b77d370ceafdef1ab1c7782cbf7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616020,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"49824b77d370ceafdef1ab1c7782cbf7","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0d5f221e9ad9d790fcc17b82b3ddfa62"} device-1 | {"level":"info","message":"POST /devices/e5db24ce-9904-4d5f-b5e5-2256df342389/websocket 200 26ms","method":"POST","requestID":"0d5f221e9ad9d790fcc17b82b3ddfa62","responseTime":26,"status":200,"url":"/devices/e5db24ce-9904-4d5f-b5e5-2256df342389/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:27:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e5db24ce-9904-4d5f-b5e5-2256df342389/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":"0d5f221e9ad9d790fcc17b82b3ddfa62"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"49824b77d370ceafdef1ab1c7782cbf7"} gateway-1 | {"time_local":"02/Aug/2024:16:27:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/15404ca0-c16a-4586-bb4b-c32d65121561/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":"49824b77d370ceafdef1ab1c7782cbf7"} device-1 | {"level":"info","message":"POST /devices/15404ca0-c16a-4586-bb4b-c32d65121561/websocket 200 23ms","method":"POST","requestID":"49824b77d370ceafdef1ab1c7782cbf7","responseTime":23,"status":200,"url":"/devices/15404ca0-c16a-4586-bb4b-c32d65121561/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d84d131576e5a2ac78c0c4bf7ec46e2a","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":"d84d131576e5a2ac78c0c4bf7ec46e2a","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:27:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e5db24ce-9904-4d5f-b5e5-2256df342389? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"d84d131576e5a2ac78c0c4bf7ec46e2a"} device-1 | {"level":"info","message":"OPTIONS /devices/e5db24ce-9904-4d5f-b5e5-2256df342389? 200 1ms","method":"OPTIONS","requestID":"d84d131576e5a2ac78c0c4bf7ec46e2a","responseTime":1,"status":200,"url":"/devices/e5db24ce-9904-4d5f-b5e5-2256df342389?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d065de9ec68d64d89f14332e54311475","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":"d065de9ec68d64d89f14332e54311475","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:27:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/15404ca0-c16a-4586-bb4b-c32d65121561? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"d065de9ec68d64d89f14332e54311475"} device-1 | {"level":"info","message":"OPTIONS /devices/15404ca0-c16a-4586-bb4b-c32d65121561? 200 1ms","method":"OPTIONS","requestID":"d065de9ec68d64d89f14332e54311475","responseTime":1,"status":200,"url":"/devices/15404ca0-c16a-4586-bb4b-c32d65121561?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs","level":"info","message":"auth send jwt","requestID":"d906ed8010078a5a8c124ba865e1140f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d906ed8010078a5a8c124ba865e1140f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d906ed8010078a5a8c124ba865e1140f"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1385,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs","level":"info","message":"auth send jwt","requestID":"f20dd8872454bed11e69beba9de66e1d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1385,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.177632,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f20dd8872454bed11e69beba9de66e1d","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d906ed8010078a5a8c124ba865e1140f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616020,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d906ed8010078a5a8c124ba865e1140f","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f20dd8872454bed11e69beba9de66e1d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1386,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1386,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.160259,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f20dd8872454bed11e69beba9de66e1d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616020,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f20dd8872454bed11e69beba9de66e1d","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5db24ce-9904-4d5f-b5e5-2256df342389","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5db24ce-9904-4d5f-b5e5-2256df342389","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:58.387871248Z"}]},"request_id":"7812f493-fe9e-41c1-a60d-1b602958bc49","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.5339444} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d906ed8010078a5a8c124ba865e1140f","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15404ca0-c16a-4586-bb4b-c32d65121561","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15404ca0-c16a-4586-bb4b-c32d65121561","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:58.439111089Z"}]},"request_id":"163e1f51-39b7-4b31-a6f9-a3de5661ca88","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.5378876} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f20dd8872454bed11e69beba9de66e1d","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9194e16b-cfdd-4097-9ff2-db8839711222","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.5396132} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d906ed8010078a5a8c124ba865e1140f","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ce5417c7-1449-473a-90c0-b2fd4a48ad38","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.5448108} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f20dd8872454bed11e69beba9de66e1d","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5db24ce-9904-4d5f-b5e5-2256df342389","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5db24ce-9904-4d5f-b5e5-2256df342389","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:58.387871248Z"}]},"request_id":"eefa928b-09cf-4f5f-897a-fed14434fb6b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.5570295} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d906ed8010078a5a8c124ba865e1140f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d906ed8010078a5a8c124ba865e1140f"} gateway-1 | {"time_local":"02/Aug/2024:16:27:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e5db24ce-9904-4d5f-b5e5-2256df342389? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.045","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":"d906ed8010078a5a8c124ba865e1140f"} device-1 | {"level":"info","message":"PATCH /devices/e5db24ce-9904-4d5f-b5e5-2256df342389? 200 38ms","method":"PATCH","requestID":"d906ed8010078a5a8c124ba865e1140f","responseTime":38,"status":200,"url":"/devices/e5db24ce-9904-4d5f-b5e5-2256df342389?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15404ca0-c16a-4586-bb4b-c32d65121561","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15404ca0-c16a-4586-bb4b-c32d65121561","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:58.439111089Z"}]},"request_id":"4981b7fe-944d-4b9c-ab00-60f31000b986","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.5688214} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f20dd8872454bed11e69beba9de66e1d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f20dd8872454bed11e69beba9de66e1d"} device-1 | {"level":"info","message":"PATCH /devices/15404ca0-c16a-4586-bb4b-c32d65121561? 200 45ms","method":"PATCH","requestID":"f20dd8872454bed11e69beba9de66e1d","responseTime":45,"status":200,"url":"/devices/15404ca0-c16a-4586-bb4b-c32d65121561?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/15404ca0-c16a-4586-bb4b-c32d65121561? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.051","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":"f20dd8872454bed11e69beba9de66e1d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs","level":"info","message":"auth send jwt","requestID":"40c8340888f2a71ebdcf995282ea3fcf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"40c8340888f2a71ebdcf995282ea3fcf","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"40c8340888f2a71ebdcf995282ea3fcf"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1387,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1387,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.755005,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"40c8340888f2a71ebdcf995282ea3fcf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616020,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"40c8340888f2a71ebdcf995282ea3fcf","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5db24ce-9904-4d5f-b5e5-2256df342389","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5db24ce-9904-4d5f-b5e5-2256df342389","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:58.387871248Z"}]},"request_id":"9dc3077b-2ff1-4583-9b0f-77965d5e7f6f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.5926113} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"40c8340888f2a71ebdcf995282ea3fcf","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"40c8340888f2a71ebdcf995282ea3fcf"} gateway-1 | {"time_local":"02/Aug/2024:16:27:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e5db24ce-9904-4d5f-b5e5-2256df342389? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"40c8340888f2a71ebdcf995282ea3fcf"} device-1 | {"level":"info","message":"GET /devices/e5db24ce-9904-4d5f-b5e5-2256df342389? 200 15ms","method":"GET","requestID":"40c8340888f2a71ebdcf995282ea3fcf","responseTime":15,"status":200,"url":"/devices/e5db24ce-9904-4d5f-b5e5-2256df342389?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs","level":"info","message":"auth send jwt","requestID":"22a127da19896cf20a19c5df3c30fa39"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"22a127da19896cf20a19c5df3c30fa39","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"22a127da19896cf20a19c5df3c30fa39"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1388,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1388,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.122096,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"22a127da19896cf20a19c5df3c30fa39","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616020,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"22a127da19896cf20a19c5df3c30fa39","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15404ca0-c16a-4586-bb4b-c32d65121561","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15404ca0-c16a-4586-bb4b-c32d65121561","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:58.439111089Z"}]},"request_id":"3085ac17-4ceb-4953-b1d7-08041cd23172","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.6137128} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"22a127da19896cf20a19c5df3c30fa39","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"22a127da19896cf20a19c5df3c30fa39"} device-1 | {"level":"info","message":"GET /devices/15404ca0-c16a-4586-bb4b-c32d65121561? 200 15ms","method":"GET","requestID":"22a127da19896cf20a19c5df3c30fa39","responseTime":15,"status":200,"url":"/devices/15404ca0-c16a-4586-bb4b-c32d65121561?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/15404ca0-c16a-4586-bb4b-c32d65121561? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"22a127da19896cf20a19c5df3c30fa39"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs","level":"info","message":"auth send jwt","requestID":"d4a012176d32f65a0b6c4bc64c2204ce"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d4a012176d32f65a0b6c4bc64c2204ce","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"d4a012176d32f65a0b6c4bc64c2204ce"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1389,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1389,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.422408,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d4a012176d32f65a0b6c4bc64c2204ce","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616020,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d4a012176d32f65a0b6c4bc64c2204ce","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f"},"level":"info","message":"Attempting to run experiment","requestID":"d4a012176d32f65a0b6c4bc64c2204ce"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f"},"level":"info","message":"Attempting to book experiment","requestID":"d4a012176d32f65a0b6c4bc64c2204ce"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f"},"level":"info","message":"Successfully booked experiment","requestID":"d4a012176d32f65a0b6c4bc64c2204ce"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0b770c70-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0b773380-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1390,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1390,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.683948,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0b770c70-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616020,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0b770c70-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1391,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1391,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.65922,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0b773380-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616020,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0b773380-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5db24ce-9904-4d5f-b5e5-2256df342389","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5db24ce-9904-4d5f-b5e5-2256df342389","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:58.387871248Z"}]},"request_id":"d64c4264-544e-4e3a-a2b2-b2ec6fab7545","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.672082} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0b770c70-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15404ca0-c16a-4586-bb4b-c32d65121561","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15404ca0-c16a-4586-bb4b-c32d65121561","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:58.439111089Z"}]},"request_id":"5065d7be-6fe8-4d01-8c6a-36ad8cc18498","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.6752563} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0b770c70-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0b773380-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/e5db24ce-9904-4d5f-b5e5-2256df342389? 200 14ms","method":"GET","requestID":"0b770c70-50ec-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/e5db24ce-9904-4d5f-b5e5-2256df342389?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0b773380-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/15404ca0-c16a-4586-bb4b-c32d65121561? 200 16ms","method":"GET","requestID":"0b773380-50ec-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/15404ca0-c16a-4586-bb4b-c32d65121561?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f"},"level":"info","message":"Setting up experiment","requestID":"d4a012176d32f65a0b6c4bc64c2204ce"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"d4a012176d32f65a0b6c4bc64c2204ce"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"d4a012176d32f65a0b6c4bc64c2204ce"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"d4a012176d32f65a0b6c4bc64c2204ce"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"d4a012176d32f65a0b6c4bc64c2204ce"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"d4a012176d32f65a0b6c4bc64c2204ce"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"d4a012176d32f65a0b6c4bc64c2204ce"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f"},"level":"info","message":"Successfully set up experiment","requestID":"d4a012176d32f65a0b6c4bc64c2204ce"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0b811e90-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0b816cb0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0b81bad0-50ec-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f"},"level":"info","message":"Successfully running experiment","requestID":"d4a012176d32f65a0b6c4bc64c2204ce"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1392,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1392,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.627482,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1393,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0b811e90-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616020,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0b811e90-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1393,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.654431,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0b816cb0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616020,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0b816cb0-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56956","level":"info","msg":"Received request.","req_id":1394,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5db24ce-9904-4d5f-b5e5-2256df342389","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5db24ce-9904-4d5f-b5e5-2256df342389","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:58.387871248Z"}]},"request_id":"18a7dcfc-fead-4ade-ab81-b22e2750ef0a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.743576} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5db24ce-9904-4d5f-b5e5-2256df342389","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b7530123-5aad-45fe-aa59-1f3d845ed733","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.7439044} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0b811e90-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15404ca0-c16a-4586-bb4b-c32d65121561","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15404ca0-c16a-4586-bb4b-c32d65121561","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:58.439111089Z"}]},"request_id":"73998dd6-4b79-42cf-98d9-a257a8e3bdb8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.7445505} authorization-1 | {"client_addr":"127.0.0.1:56956","level":"info","msg":"Sent response.","req_id":1394,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.557006,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0b81bad0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389","object_type":"device","rebac_allow":false,"scope_allow":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":"0b81bad0-50ec-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0b816cb0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0b811e90-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/e5db24ce-9904-4d5f-b5e5-2256df342389? 200 25ms","method":"GET","requestID":"0b811e90-50ec-11ef-8434-2f6d198c7397","responseTime":25,"status":200,"url":"/devices/e5db24ce-9904-4d5f-b5e5-2256df342389?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0b81bad0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/e5db24ce-9904-4d5f-b5e5-2256df342389/signaling 200 22ms","method":"POST","requestID":"0b81bad0-50ec-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/e5db24ce-9904-4d5f-b5e5-2256df342389/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0b816cb0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/15404ca0-c16a-4586-bb4b-c32d65121561? 200 25ms","method":"GET","requestID":"0b816cb0-50ec-11ef-8434-2f6d198c7397","responseTime":25,"status":200,"url":"/devices/15404ca0-c16a-4586-bb4b-c32d65121561?"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F19daa731-a55b-4375-8bd0-bbffa807bf7f#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F19daa731-a55b-4375-8bd0-bbffa807bf7f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"e5a59829-9519-4263-b0fb-7ef12508f713","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.7578437} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0b858b60-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b1ad7bbf-ab83-48d9-a82a-964fff76657f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.7582395} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"d4a012176d32f65a0b6c4bc64c2204ce","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0b85d980-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1395,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1396,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15404ca0-c16a-4586-bb4b-c32d65121561","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"723bdf2f-b81e-4dab-92b6-bb7cb8041368","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.7636197} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1395,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.904615,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0b858b60-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561","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 | {"data":{"experiment":"http://localhost/experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"d4a012176d32f65a0b6c4bc64c2204ce"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0b858b60-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5db24ce-9904-4d5f-b5e5-2256df342389","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"284bfd56-d327-4548-a670-c6eb99887ee9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.7650135} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1396,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.703793,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} gateway-1 | {"time_local":"02/Aug/2024:16:27:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1212","request_time":"0.146","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d4a012176d32f65a0b6c4bc64c2204ce"} experiment-1 | {"level":"info","message":"POST /experiments? 201 140ms","method":"POST","requestID":"d4a012176d32f65a0b6c4bc64c2204ce","responseTime":140,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0b85d980-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389","object_type":"device","rebac_allow":false,"scope_allow":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":"0b85d980-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0b858b60-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/15404ca0-c16a-4586-bb4b-c32d65121561/signaling 200 11ms","method":"POST","requestID":"0b858b60-50ec-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/15404ca0-c16a-4586-bb4b-c32d65121561/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0b85d980-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/e5db24ce-9904-4d5f-b5e5-2256df342389/signaling 200 11ms","method":"POST","requestID":"0b85d980-50ec-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/e5db24ce-9904-4d5f-b5e5-2256df342389/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs","level":"info","message":"auth send jwt","requestID":"95dbdfe88169d96f0a09aa559abee373"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"95dbdfe88169d96f0a09aa559abee373","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"95dbdfe88169d96f0a09aa559abee373"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0b87fc60-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1397,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1397,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.721761,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"95dbdfe88169d96f0a09aa559abee373","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616020,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"95dbdfe88169d96f0a09aa559abee373","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1398,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15404ca0-c16a-4586-bb4b-c32d65121561","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5569bd10-dbb2-43f4-8cb9-11388ffab400","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.7779648} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1398,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.220823,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0b87fc60-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561","object_type":"device","rebac_allow":false,"scope_allow":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":"0b87fc60-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5db24ce-9904-4d5f-b5e5-2256df342389","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5db24ce-9904-4d5f-b5e5-2256df342389","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:58.387871248Z"}]},"request_id":"2cb0a74b-1e8d-46df-b485-3a0d4f2a9641","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.7812586} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0b87fc60-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/15404ca0-c16a-4586-bb4b-c32d65121561/signaling 200 7ms","method":"POST","requestID":"0b87fc60-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/devices/15404ca0-c16a-4586-bb4b-c32d65121561/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"95dbdfe88169d96f0a09aa559abee373","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"d4a012176d32f65a0b6c4bc64c2204ce"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0b898300-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0b898301-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1399,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1399,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.973021,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"95dbdfe88169d96f0a09aa559abee373"} gateway-1 | {"time_local":"02/Aug/2024:16:27:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e5db24ce-9904-4d5f-b5e5-2256df342389? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"95dbdfe88169d96f0a09aa559abee373"} device-1 | {"level":"info","message":"GET /devices/e5db24ce-9904-4d5f-b5e5-2256df342389? 200 17ms","method":"GET","requestID":"95dbdfe88169d96f0a09aa559abee373","responseTime":17,"status":200,"url":"/devices/e5db24ce-9904-4d5f-b5e5-2256df342389?"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1400,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0b898300-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616020,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0b898300-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs","level":"info","message":"auth send jwt","requestID":"1a7ebdd4e6069cb69eb27c255d115c25"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1a7ebdd4e6069cb69eb27c255d115c25","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5db24ce-9904-4d5f-b5e5-2256df342389","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5db24ce-9904-4d5f-b5e5-2256df342389","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:58.387871248Z"}]},"request_id":"2d4bbdfa-a2be-44db-a91d-181a4adb6678","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.7934532} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0b898300-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1a7ebdd4e6069cb69eb27c255d115c25"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1400,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":9.163551,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1401,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0b898301-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616020,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"0b898301-50ec-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0b898300-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1401,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.817399,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1a7ebdd4e6069cb69eb27c255d115c25","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616020,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs"} device-1 | {"level":"info","message":"GET /devices/e5db24ce-9904-4d5f-b5e5-2256df342389? 200 14ms","method":"GET","requestID":"0b898300-50ec-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/e5db24ce-9904-4d5f-b5e5-2256df342389?"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1a7ebdd4e6069cb69eb27c255d115c25","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15404ca0-c16a-4586-bb4b-c32d65121561","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15404ca0-c16a-4586-bb4b-c32d65121561","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:58.439111089Z"}]},"request_id":"254c6f5e-f866-45c2-8739-bad581cb2bd1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.800967} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0b898301-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15404ca0-c16a-4586-bb4b-c32d65121561","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15404ca0-c16a-4586-bb4b-c32d65121561","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:26:58.439111089Z"}]},"request_id":"4e98d5ad-9a42-4132-b158-eedd888912ac","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.8016791} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1a7ebdd4e6069cb69eb27c255d115c25","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0b898301-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/15404ca0-c16a-4586-bb4b-c32d65121561? 200 21ms","method":"GET","requestID":"0b898301-50ec-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/devices/15404ca0-c16a-4586-bb4b-c32d65121561?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1a7ebdd4e6069cb69eb27c255d115c25"} gateway-1 | {"time_local":"02/Aug/2024:16:27:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/15404ca0-c16a-4586-bb4b-c32d65121561? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1a7ebdd4e6069cb69eb27c255d115c25"} device-1 | {"level":"info","message":"GET /devices/15404ca0-c16a-4586-bb4b-c32d65121561? 200 12ms","method":"GET","requestID":"1a7ebdd4e6069cb69eb27c255d115c25","responseTime":12,"status":200,"url":"/devices/15404ca0-c16a-4586-bb4b-c32d65121561?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f"},"level":"info","message":"Building connection plan","requestID":"d4a012176d32f65a0b6c4bc64c2204ce"} 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":"d6ca2f10-fbf4-4a52-870b-be2e02eb5636"},{"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":"65446876-1848-4893-86a0-f72dc109cf1d"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"e51d4872-16b0-4406-8a2a-f212105aa52a"}]},"level":"info","message":"Built pairwise service configurations","requestID":"d4a012176d32f65a0b6c4bc64c2204ce"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"0b8d2c80-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"0b8d2c80-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"0b8d2c80-50ec-11ef-a432-47ab85bb6d58","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/7acf6594-d801-44c7-bbc6-55300e197ac8?id=a16928d6-b70f-482d-a907-c5d944c1d0b3","ws://localhost/rooms/7acf6594-d801-44c7-bbc6-55300e197ac8?id=ceeec3b1-7ee6-4dae-a14f-fea6c176f7c9"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"d4a012176d32f65a0b6c4bc64c2204ce"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"0b8da1b0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1402,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1402,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.690684,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0b8da1b0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616020,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"0b8da1b0-50ec-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"e608dd56-d076-4e61-995a-0c3a3b33d2a4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.8223047} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"80e1821d-41b6-4992-bea0-45be72b6c483","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.82248} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"0b8da1b0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"0b8da1b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"0b8da1b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f9479f99-09db-4498-b576-8c20a97ed660'","requestID":"0b8da1b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f9479f99-09db-4498-b576-8c20a97ed660'","requestID":"0b8da1b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"0b8da1b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"0b8da1b0-50ec-11ef-8434-2f6d198c7397","responseTime":25,"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":"0b8da1b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f9479f99-09db-4498-b576-8c20a97ed660' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f9479f99-09db-4498-b576-8c20a97ed660","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"0b936e10-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a16928d6-b70f-482d-a907-c5d944c1d0b3\" in room \"http://localhost/rooms/7acf6594-d801-44c7-bbc6-55300e197ac8\"","requestID":"0b936e10-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"0b936e10-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"0b939520-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ceeec3b1-7ee6-4dae-a14f-fea6c176f7c9\" in room \"http://localhost/rooms/7acf6594-d801-44c7-bbc6-55300e197ac8\"","requestID":"0b939520-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"0b939520-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ceeec3b1-7ee6-4dae-a14f-fea6c176f7c9\" in room \"http://localhost/rooms/7acf6594-d801-44c7-bbc6-55300e197ac8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ceeec3b1-7ee6-4dae-a14f-fea6c176f7c9\" in room \"http://localhost/rooms/7acf6594-d801-44c7-bbc6-55300e197ac8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ceeec3b1-7ee6-4dae-a14f-fea6c176f7c9\" in room \"http://localhost/rooms/7acf6594-d801-44c7-bbc6-55300e197ac8\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"727724c82e34987b91192bcb88b08f2d","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)"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ceeec3b1-7ee6-4dae-a14f-fea6c176f7c9\" in room \"http://localhost/rooms/7acf6594-d801-44c7-bbc6-55300e197ac8\""} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"727724c82e34987b91192bcb88b08f2d","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/f9479f99-09db-4498-b576-8c20a97ed660"}}},"level":"info","message":"received a callback","requestID":"727724c82e34987b91192bcb88b08f2d"} device-1 | {"data":{"peerconnection":"f9479f99-09db-4498-b576-8c20a97ed660","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"727724c82e34987b91192bcb88b08f2d","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27: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":"727724c82e34987b91192bcb88b08f2d"} device-1 | {"data":{"peerconnection":"f9479f99-09db-4498-b576-8c20a97ed660","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"d4a012176d32f65a0b6c4bc64c2204ce"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0b982900-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1403,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5db24ce-9904-4d5f-b5e5-2256df342389","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e9c9bd91-c59b-4089-914d-16e3a9af7e50","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.8840933} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1403,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.619423,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0b982900-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389","object_type":"device","rebac_allow":false,"scope_allow":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":"0b982900-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f9479f99-09db-4498-b576-8c20a97ed660' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f9479f99-09db-4498-b576-8c20a97ed660","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0b982900-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/e5db24ce-9904-4d5f-b5e5-2256df342389/signaling 200 9ms","method":"POST","requestID":"0b982900-50ec-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/e5db24ce-9904-4d5f-b5e5-2256df342389/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3e558138a06037fdb309f606f5ae461a","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":"3e558138a06037fdb309f606f5ae461a","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0b99fdc0-50ec-11ef-8434-2f6d198c7397"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/f9479f99-09db-4498-b576-8c20a97ed660"}}},"level":"info","message":"received a callback","requestID":"3e558138a06037fdb309f606f5ae461a"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1404,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15404ca0-c16a-4586-bb4b-c32d65121561","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"790355a9-b3a7-40d0-9d09-cdbceec85c50","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.8967624} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1404,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.420915,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0b99fdc0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561","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":"getPeerconnectionsByPeerconnectionId called","requestID":"0b9ac110-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0b99fdc0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1405,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0b99fdc0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/15404ca0-c16a-4586-bb4b-c32d65121561/signaling 200 9ms","method":"POST","requestID":"0b99fdc0-50ec-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/15404ca0-c16a-4586-bb4b-c32d65121561/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff9479f99-09db-4498-b576-8c20a97ed660","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"775a64e4-b6bc-4ea7-a9f5-e462b187c926","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.9013648} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1405,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.468707,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f9479f99-09db-4498-b576-8c20a97ed660","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0b9ac110-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f9479f99-09db-4498-b576-8c20a97ed660","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":"0b9ac110-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"0b9ac110-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/f9479f99-09db-4498-b576-8c20a97ed660 200 7ms","method":"GET","requestID":"0b9ac110-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/peerconnections/f9479f99-09db-4498-b576-8c20a97ed660"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"3e558138a06037fdb309f606f5ae461a","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27: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.030","http_referrer":"","http_user_agent":"node-fetch","requestID":"3e558138a06037fdb309f606f5ae461a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0b9e1c70-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1406,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5db24ce-9904-4d5f-b5e5-2256df342389","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"db92fcb4-01c7-4f12-9bbd-5fd7ef9795b1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.9238374} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1406,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.495447,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0b9e1c70-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389","object_type":"device","rebac_allow":false,"scope_allow":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":"0b9e1c70-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0b9e1c70-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/e5db24ce-9904-4d5f-b5e5-2256df342389/signaling 200 9ms","method":"POST","requestID":"0b9e1c70-50ec-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/e5db24ce-9904-4d5f-b5e5-2256df342389/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0b9fa310-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1407,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15404ca0-c16a-4586-bb4b-c32d65121561","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9750e5c8-450b-49c8-b222-d8358aacb058","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616020.933794} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1407,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.137658,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0b9fa310-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561","object_type":"device","rebac_allow":false,"scope_allow":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":"0b9fa310-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0b9fa310-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/15404ca0-c16a-4586-bb4b-c32d65121561/signaling 200 8ms","method":"POST","requestID":"0b9fa310-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/15404ca0-c16a-4586-bb4b-c32d65121561/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs","level":"info","message":"auth send jwt","requestID":"1e40b780a49b5cda07719a7337ae5829"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1e40b780a49b5cda07719a7337ae5829","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f","requestID":"1e40b780a49b5cda07719a7337ae5829"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1408,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1408,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.046876,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1e40b780a49b5cda07719a7337ae5829","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616020,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1e40b780a49b5cda07719a7337ae5829","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f","requestID":"1e40b780a49b5cda07719a7337ae5829"} experiment-1 | {"level":"info","message":"GET /experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f 200 10ms","method":"GET","requestID":"1e40b780a49b5cda07719a7337ae5829","responseTime":10,"status":200,"url":"/experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f"} gateway-1 | {"time_local":"02/Aug/2024:16:27:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f HTTP/1.1","status": "200","body_bytes_sent":"1285","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1e40b780a49b5cda07719a7337ae5829"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs","level":"info","message":"auth send jwt","requestID":"552a0346ffbeac65ab0ddb00f8e64be4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"552a0346ffbeac65ab0ddb00f8e64be4","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f","requestID":"552a0346ffbeac65ab0ddb00f8e64be4"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1409,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1409,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.584892,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"552a0346ffbeac65ab0ddb00f8e64be4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616020,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"552a0346ffbeac65ab0ddb00f8e64be4","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f"},"level":"info","message":"Attempting to finish experiment","requestID":"552a0346ffbeac65ab0ddb00f8e64be4"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"0ba855a0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1410,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1410,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.217923,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f9479f99-09db-4498-b576-8c20a97ed660","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0ba855a0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/f9479f99-09db-4498-b576-8c20a97ed660","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616020,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMH0.axBJB-tmfVjNpcNQj9uGJeVoE80pdyNIlRsrvpiUCbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0ba855a0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f9479f99-09db-4498-b576-8c20a97ed660","device":"e5db24ce-9904-4d5f-b5e5-2256df342389","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"02/Aug/2024:16:27:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/7acf6594-d801-44c7-bbc6-55300e197ac8?id=a16928d6-b70f-482d-a907-c5d944c1d0b3 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.150","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":"c858ba5bbdf0d3855334205108df6956"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f9479f99-09db-4498-b576-8c20a97ed660","device":"15404ca0-c16a-4586-bb4b-c32d65121561","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f9479f99-09db-4498-b576-8c20a97ed660' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f9479f99-09db-4498-b576-8c20a97ed660' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f9479f99-09db-4498-b576-8c20a97ed660","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"a16928d6-b70f-482d-a907-c5d944c1d0b3\" in room \"http://localhost/rooms/7acf6594-d801-44c7-bbc6-55300e197ac8\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"a16928d6-b70f-482d-a907-c5d944c1d0b3\" from room \"http://localhost/rooms/7acf6594-d801-44c7-bbc6-55300e197ac8\""} gateway-1 | {"time_local":"02/Aug/2024:16:27:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/7acf6594-d801-44c7-bbc6-55300e197ac8?id=ceeec3b1-7ee6-4dae-a14f-fea6c176f7c9 HTTP/1.1","status": "101","body_bytes_sent":"438","request_time":"0.152","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":"cf7f130a953a9f455d9149ca96998766"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"ceeec3b1-7ee6-4dae-a14f-fea6c176f7c9\" in room \"http://localhost/rooms/7acf6594-d801-44c7-bbc6-55300e197ac8\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"ceeec3b1-7ee6-4dae-a14f-fea6c176f7c9\" from room \"http://localhost/rooms/7acf6594-d801-44c7-bbc6-55300e197ac8\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"32317307ba6343093e8057b2ff62aa06","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":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff9479f99-09db-4498-b576-8c20a97ed660': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff9479f99-09db-4498-b576-8c20a97ed660","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"d53b3367-8a96-4f9f-9dd5-4118dad73c50","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616021.0035985} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"32317307ba6343093e8057b2ff62aa06","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eb57da41-929c-4527-a55e-9104b486751b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616021.0038478} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"294561558e0482b3ec5339646d4d565f","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":"294561558e0482b3ec5339646d4d565f","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"0ba855a0-50ec-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/relations/update"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/f9479f99-09db-4498-b576-8c20a97ed660"}}},"level":"info","message":"received a callback","requestID":"32317307ba6343093e8057b2ff62aa06"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/f9479f99-09db-4498-b576-8c20a97ed660"}}},"level":"info","message":"received a callback","requestID":"294561558e0482b3ec5339646d4d565f"} device-1 | {"data":{"peerconnection":"f9479f99-09db-4498-b576-8c20a97ed660","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"0ba855a0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/f9479f99-09db-4498-b576-8c20a97ed660 204 40ms","method":"DELETE","requestID":"0ba855a0-50ec-11ef-8434-2f6d198c7397","responseTime":40,"status":204,"url":"/peerconnections/f9479f99-09db-4498-b576-8c20a97ed660"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f"},"level":"info","message":"Successfully finished experiment","requestID":"552a0346ffbeac65ab0ddb00f8e64be4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0bb06bf0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1411,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:01Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5db24ce-9904-4d5f-b5e5-2256df342389","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e77ec8b2-80b9-498a-8b99-25c893d581ae","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616021.044136} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1411,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.722554,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0bb06bf0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e5db24ce-9904-4d5f-b5e5-2256df342389","object_type":"device","rebac_allow":false,"scope_allow":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":"0bb06bf0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0bb06bf0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/e5db24ce-9904-4d5f-b5e5-2256df342389/signaling 200 11ms","method":"POST","requestID":"0bb06bf0-50ec-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/e5db24ce-9904-4d5f-b5e5-2256df342389/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F19daa731-a55b-4375-8bd0-bbffa807bf7f': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F19daa731-a55b-4375-8bd0-bbffa807bf7f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"82cf17b9-62ae-4905-8b36-ffb0d106eed0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616021.0509067} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f208f952-89fc-4343-b7e4-21f4dd515027","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616021.0511591} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0bb267c0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"552a0346ffbeac65ab0ddb00f8e64be4","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1412,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:01Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15404ca0-c16a-4586-bb4b-c32d65121561","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b297eaea-5824-457e-b852-f68166662daa","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616021.0562212} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1412,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.45635,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0bb267c0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561","object_type":"device","rebac_allow":false,"scope_allow":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":"0bb267c0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0bb267c0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/15404ca0-c16a-4586-bb4b-c32d65121561/signaling 200 8ms","method":"POST","requestID":"0bb267c0-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/15404ca0-c16a-4586-bb4b-c32d65121561/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f","requestID":"552a0346ffbeac65ab0ddb00f8e64be4"} gateway-1 | {"time_local":"02/Aug/2024:16:27:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"552a0346ffbeac65ab0ddb00f8e64be4"} experiment-1 | {"level":"info","message":"DELETE /experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f 204 136ms","method":"DELETE","requestID":"552a0346ffbeac65ab0ddb00f8e64be4","responseTime":136,"status":204,"url":"/experiments/19daa731-a55b-4375-8bd0-bbffa807bf7f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 107ms","method":"POST","requestID":"32317307ba6343093e8057b2ff62aa06","responseTime":107,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27: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.111","http_referrer":"","http_user_agent":"node-fetch","requestID":"32317307ba6343093e8057b2ff62aa06"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 107ms","method":"POST","requestID":"294561558e0482b3ec5339646d4d565f","responseTime":107,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27: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.112","http_referrer":"","http_user_agent":"node-fetch","requestID":"294561558e0482b3ec5339646d4d565f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMX0.a-sksUeBmNN8_NCNB3QpbEToXuOjf9vwxwUf_2N7U7o","level":"info","message":"auth send jwt","requestID":"b442dd822ec0eb455ef503422ca08da9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b442dd822ec0eb455ef503422ca08da9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b442dd822ec0eb455ef503422ca08da9"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1413,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1413,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.880399,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:01Z"} gateway-1 | {"time_local":"02/Aug/2024:16:27:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1746","request_time":"0.641","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":"6b0eae7c9a26318edd2cad7bd4b0dc5c"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b442dd822ec0eb455ef503422ca08da9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616021,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMX0.a-sksUeBmNN8_NCNB3QpbEToXuOjf9vwxwUf_2N7U7o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b442dd822ec0eb455ef503422ca08da9","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/e5db24ce-9904-4d5f-b5e5-2256df342389' closed"} gateway-1 | {"time_local":"02/Aug/2024:16:27:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1743","request_time":"0.639","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":"91acca5b48dc30280e743deb91c8500a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d1c0e2e-bbec-4587-8f2c-44cdf962cced","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"24155993-83b6-46ce-bc94-11ae89795e1b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616021.1364164} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b442dd822ec0eb455ef503422ca08da9","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"645d10e4-c2b3-4484-8669-380e1c0fc7c3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616021.1405287} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"b442dd822ec0eb455ef503422ca08da9","responseTime":2,"status":200,"url":"/relations/update"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/15404ca0-c16a-4586-bb4b-c32d65121561' closed"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d1c0e2e-bbec-4587-8f2c-44cdf962cced","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"661e8853-5095-488b-afff-296991831b1b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616021.1496868} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"60dc0914-fd2c-42c6-9d99-8060dec9f7c3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616021.1505945} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"b442dd822ec0eb455ef503422ca08da9","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d1c0e2e-bbec-4587-8f2c-44cdf962cced","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d1c0e2e-bbec-4587-8f2c-44cdf962cced","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:01.149640751Z"}]},"request_id":"d0812fdb-bf66-495d-9337-7c4785e55e65","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616021.1540706} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b442dd822ec0eb455ef503422ca08da9","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b442dd822ec0eb455ef503422ca08da9"} gateway-1 | {"time_local":"02/Aug/2024:16:27:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b442dd822ec0eb455ef503422ca08da9"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"b442dd822ec0eb455ef503422ca08da9","responseTime":38,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMX0.a-sksUeBmNN8_NCNB3QpbEToXuOjf9vwxwUf_2N7U7o","level":"info","message":"auth send jwt","requestID":"21f6256b82c3bf50e3e1c1ae4ab6b20b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"21f6256b82c3bf50e3e1c1ae4ab6b20b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"21f6256b82c3bf50e3e1c1ae4ab6b20b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1414,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:01Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1414,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.677321,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"21f6256b82c3bf50e3e1c1ae4ab6b20b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616021,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyMX0.a-sksUeBmNN8_NCNB3QpbEToXuOjf9vwxwUf_2N7U7o"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"21f6256b82c3bf50e3e1c1ae4ab6b20b","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd590225-6335-4fe0-af46-d9206dfec4f4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"122de3ad-98a8-4023-a3c1-0b8c3e4514fc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616021.174658} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"21f6256b82c3bf50e3e1c1ae4ab6b20b","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"631fa61f-afd2-4af4-b57b-82f1615d3211","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616021.1792095} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"21f6256b82c3bf50e3e1c1ae4ab6b20b","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd590225-6335-4fe0-af46-d9206dfec4f4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"948fbef2-f255-4b94-a5d4-70daf3b088ad","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616021.1950638} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aaa388d3-ea82-4732-8a36-e5b4cf482dc7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616021.1951537} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"21f6256b82c3bf50e3e1c1ae4ab6b20b","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd590225-6335-4fe0-af46-d9206dfec4f4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd590225-6335-4fe0-af46-d9206dfec4f4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:01.195034152Z"}]},"request_id":"441c6cfe-5166-462a-9d14-fdc4315434db","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616021.1992831} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"21f6256b82c3bf50e3e1c1ae4ab6b20b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"21f6256b82c3bf50e3e1c1ae4ab6b20b"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"21f6256b82c3bf50e3e1c1ae4ab6b20b","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"21f6256b82c3bf50e3e1c1ae4ab6b20b"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f40b563cfa6fa2a775cbc8ee3313431f","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":"f40b563cfa6fa2a775cbc8ee3313431f","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:27:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced/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":"f40b563cfa6fa2a775cbc8ee3313431f"} device-1 | {"level":"info","message":"OPTIONS /devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced/websocket 200 1ms","method":"OPTIONS","requestID":"f40b563cfa6fa2a775cbc8ee3313431f","responseTime":1,"status":200,"url":"/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8","level":"info","message":"auth send jwt","requestID":"a9c1593c08553f960fc6800e7fe53215"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a9c1593c08553f960fc6800e7fe53215","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a9c1593c08553f960fc6800e7fe53215"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"05b16ece2e4c68c938970b95a4615fc1","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 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1415,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"05b16ece2e4c68c938970b95a4615fc1","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1415,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.849748,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a9c1593c08553f960fc6800e7fe53215","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616023,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8"} gateway-1 | {"time_local":"02/Aug/2024:16:27:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/cd590225-6335-4fe0-af46-d9206dfec4f4/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":"05b16ece2e4c68c938970b95a4615fc1"} device-1 | {"level":"info","message":"OPTIONS /devices/cd590225-6335-4fe0-af46-d9206dfec4f4/websocket 200 1ms","method":"OPTIONS","requestID":"05b16ece2e4c68c938970b95a4615fc1","responseTime":1,"status":200,"url":"/devices/cd590225-6335-4fe0-af46-d9206dfec4f4/websocket"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a9c1593c08553f960fc6800e7fe53215","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8","level":"info","message":"auth send jwt","requestID":"f996e983ffb08bba0e22258360467702"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f996e983ffb08bba0e22258360467702","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f996e983ffb08bba0e22258360467702"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1416,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1416,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.051807,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f996e983ffb08bba0e22258360467702","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616023,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f996e983ffb08bba0e22258360467702","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a9c1593c08553f960fc6800e7fe53215"} gateway-1 | {"time_local":"02/Aug/2024:16:27:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced/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":"a9c1593c08553f960fc6800e7fe53215"} device-1 | {"level":"info","message":"POST /devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced/websocket 200 20ms","method":"POST","requestID":"a9c1593c08553f960fc6800e7fe53215","responseTime":20,"status":200,"url":"/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f996e983ffb08bba0e22258360467702"} gateway-1 | {"time_local":"02/Aug/2024:16:27:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/cd590225-6335-4fe0-af46-d9206dfec4f4/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","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":"f996e983ffb08bba0e22258360467702"} device-1 | {"level":"info","message":"POST /devices/cd590225-6335-4fe0-af46-d9206dfec4f4/websocket 200 19ms","method":"POST","requestID":"f996e983ffb08bba0e22258360467702","responseTime":19,"status":200,"url":"/devices/cd590225-6335-4fe0-af46-d9206dfec4f4/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6685525579f106d495a31f492af2cb39","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":"6685525579f106d495a31f492af2cb39","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:27:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.002","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":"6685525579f106d495a31f492af2cb39"} device-1 | {"level":"info","message":"OPTIONS /devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced? 200 0ms","method":"OPTIONS","requestID":"6685525579f106d495a31f492af2cb39","responseTime":1,"status":200,"url":"/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f14ce70b4a500b690c41b9a221fb8fba","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":"f14ce70b4a500b690c41b9a221fb8fba","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:27:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/cd590225-6335-4fe0-af46-d9206dfec4f4? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"f14ce70b4a500b690c41b9a221fb8fba"} device-1 | {"level":"info","message":"OPTIONS /devices/cd590225-6335-4fe0-af46-d9206dfec4f4? 200 1ms","method":"OPTIONS","requestID":"f14ce70b4a500b690c41b9a221fb8fba","responseTime":1,"status":200,"url":"/devices/cd590225-6335-4fe0-af46-d9206dfec4f4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8","level":"info","message":"auth send jwt","requestID":"facb51e11a79fb3ae47e22a4fba02beb"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"facb51e11a79fb3ae47e22a4fba02beb","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"facb51e11a79fb3ae47e22a4fba02beb"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1417,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1417,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.650099,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"facb51e11a79fb3ae47e22a4fba02beb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616023,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8","level":"info","message":"auth send jwt","requestID":"c01218b1fb7ca74e8549409b4f40e1f4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"facb51e11a79fb3ae47e22a4fba02beb","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c01218b1fb7ca74e8549409b4f40e1f4","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c01218b1fb7ca74e8549409b4f40e1f4"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1418,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1418,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.840173,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c01218b1fb7ca74e8549409b4f40e1f4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616023,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c01218b1fb7ca74e8549409b4f40e1f4","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d1c0e2e-bbec-4587-8f2c-44cdf962cced","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d1c0e2e-bbec-4587-8f2c-44cdf962cced","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:01.149640751Z"}]},"request_id":"caaa2f5c-8ac9-4d41-8925-b9fa051bb319","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.2717018} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"facb51e11a79fb3ae47e22a4fba02beb","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e21be64f-5e33-41c0-b2a1-37ad243818ea","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.2761288} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"facb51e11a79fb3ae47e22a4fba02beb","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd590225-6335-4fe0-af46-d9206dfec4f4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd590225-6335-4fe0-af46-d9206dfec4f4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:01.195034152Z"}]},"request_id":"65f947b6-f3a1-48c3-a5f0-d719881c7278","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.2775288} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c01218b1fb7ca74e8549409b4f40e1f4","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e884d2ea-51c7-4e06-b296-f79a495c71b3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.2826903} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c01218b1fb7ca74e8549409b4f40e1f4","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d1c0e2e-bbec-4587-8f2c-44cdf962cced","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d1c0e2e-bbec-4587-8f2c-44cdf962cced","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:01.149640751Z"}]},"request_id":"be9a121b-cb33-4660-badb-87f75652bba7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.2933989} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"facb51e11a79fb3ae47e22a4fba02beb","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"facb51e11a79fb3ae47e22a4fba02beb"} gateway-1 | {"time_local":"02/Aug/2024:16:27:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.044","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":"facb51e11a79fb3ae47e22a4fba02beb"} device-1 | {"level":"info","message":"PATCH /devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced? 200 38ms","method":"PATCH","requestID":"facb51e11a79fb3ae47e22a4fba02beb","responseTime":38,"status":200,"url":"/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd590225-6335-4fe0-af46-d9206dfec4f4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd590225-6335-4fe0-af46-d9206dfec4f4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:01.195034152Z"}]},"request_id":"ed6384c1-7bfa-400a-9ede-1e40c1853a64","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.3031974} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c01218b1fb7ca74e8549409b4f40e1f4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c01218b1fb7ca74e8549409b4f40e1f4"} gateway-1 | {"time_local":"02/Aug/2024:16:27:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/cd590225-6335-4fe0-af46-d9206dfec4f4? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.045","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":"c01218b1fb7ca74e8549409b4f40e1f4"} device-1 | {"level":"info","message":"PATCH /devices/cd590225-6335-4fe0-af46-d9206dfec4f4? 200 39ms","method":"PATCH","requestID":"c01218b1fb7ca74e8549409b4f40e1f4","responseTime":39,"status":200,"url":"/devices/cd590225-6335-4fe0-af46-d9206dfec4f4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8","level":"info","message":"auth send jwt","requestID":"eac4f830da39128eba6428dcc21333b5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"eac4f830da39128eba6428dcc21333b5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"eac4f830da39128eba6428dcc21333b5"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1419,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1419,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.813444,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"eac4f830da39128eba6428dcc21333b5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616023,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"eac4f830da39128eba6428dcc21333b5","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d1c0e2e-bbec-4587-8f2c-44cdf962cced","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d1c0e2e-bbec-4587-8f2c-44cdf962cced","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:01.149640751Z"}]},"request_id":"35df0f9b-39ec-4499-86d8-2afcbb6cf90d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.32632} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"eac4f830da39128eba6428dcc21333b5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"eac4f830da39128eba6428dcc21333b5"} gateway-1 | {"time_local":"02/Aug/2024:16:27:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"eac4f830da39128eba6428dcc21333b5"} device-1 | {"level":"info","message":"GET /devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced? 200 14ms","method":"GET","requestID":"eac4f830da39128eba6428dcc21333b5","responseTime":14,"status":200,"url":"/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8","level":"info","message":"auth send jwt","requestID":"1f9505c32de36a2f178d914b870c87bc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1f9505c32de36a2f178d914b870c87bc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1f9505c32de36a2f178d914b870c87bc"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1420,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1420,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.163256,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1f9505c32de36a2f178d914b870c87bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616023,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1f9505c32de36a2f178d914b870c87bc","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd590225-6335-4fe0-af46-d9206dfec4f4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd590225-6335-4fe0-af46-d9206dfec4f4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:01.195034152Z"}]},"request_id":"ed59ee90-8d27-4f1c-ae6c-b54de147b16e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.348127} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1f9505c32de36a2f178d914b870c87bc","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1f9505c32de36a2f178d914b870c87bc"} gateway-1 | {"time_local":"02/Aug/2024:16:27:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cd590225-6335-4fe0-af46-d9206dfec4f4? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1f9505c32de36a2f178d914b870c87bc"} device-1 | {"level":"info","message":"GET /devices/cd590225-6335-4fe0-af46-d9206dfec4f4? 200 14ms","method":"GET","requestID":"1f9505c32de36a2f178d914b870c87bc","responseTime":14,"status":200,"url":"/devices/cd590225-6335-4fe0-af46-d9206dfec4f4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8","level":"info","message":"auth send jwt","requestID":"a11fc23410b03d30a5222c828b36b34b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a11fc23410b03d30a5222c828b36b34b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"a11fc23410b03d30a5222c828b36b34b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1421,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1421,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.819365,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a11fc23410b03d30a5222c828b36b34b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616023,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a11fc23410b03d30a5222c828b36b34b","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3c508609-d13a-45d9-adbd-d62698685dfd"},"level":"info","message":"Attempting to run experiment","requestID":"a11fc23410b03d30a5222c828b36b34b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3c508609-d13a-45d9-adbd-d62698685dfd"},"level":"info","message":"Attempting to book experiment","requestID":"a11fc23410b03d30a5222c828b36b34b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3c508609-d13a-45d9-adbd-d62698685dfd"},"level":"info","message":"Successfully booked experiment","requestID":"a11fc23410b03d30a5222c828b36b34b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0d186060-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0d188770-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1422,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1422,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.00765,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1423,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0d186060-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616023,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0d186060-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1423,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.84371,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0d188770-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616023,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0d188770-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d1c0e2e-bbec-4587-8f2c-44cdf962cced","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d1c0e2e-bbec-4587-8f2c-44cdf962cced","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:01.149640751Z"}]},"request_id":"3f42fd7b-95e0-48d9-85fd-4a1e257cb501","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.4088972} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"0d186060-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd590225-6335-4fe0-af46-d9206dfec4f4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd590225-6335-4fe0-af46-d9206dfec4f4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:01.195034152Z"}]},"request_id":"cc01a111-c24a-467b-8ded-d68f378fa979","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.4104097} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0d188770-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0d186060-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced? 200 22ms","method":"GET","requestID":"0d186060-50ec-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0d188770-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/cd590225-6335-4fe0-af46-d9206dfec4f4? 200 22ms","method":"GET","requestID":"0d188770-50ec-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/cd590225-6335-4fe0-af46-d9206dfec4f4?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3c508609-d13a-45d9-adbd-d62698685dfd"},"level":"info","message":"Setting up experiment","requestID":"a11fc23410b03d30a5222c828b36b34b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3c508609-d13a-45d9-adbd-d62698685dfd"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"a11fc23410b03d30a5222c828b36b34b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3c508609-d13a-45d9-adbd-d62698685dfd"},"level":"info","message":"Successfully locked booking for experiment","requestID":"a11fc23410b03d30a5222c828b36b34b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3c508609-d13a-45d9-adbd-d62698685dfd"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"a11fc23410b03d30a5222c828b36b34b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3c508609-d13a-45d9-adbd-d62698685dfd"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"a11fc23410b03d30a5222c828b36b34b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3c508609-d13a-45d9-adbd-d62698685dfd"},"level":"info","message":"Attempting to update booking for experiment","requestID":"a11fc23410b03d30a5222c828b36b34b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3c508609-d13a-45d9-adbd-d62698685dfd"},"level":"info","message":"Successfully updated booking for experiment","requestID":"a11fc23410b03d30a5222c828b36b34b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3c508609-d13a-45d9-adbd-d62698685dfd"},"level":"info","message":"Successfully set up experiment","requestID":"a11fc23410b03d30a5222c828b36b34b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0d230ec0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0d235ce0-50ec-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3c508609-d13a-45d9-adbd-d62698685dfd"},"level":"info","message":"Successfully running experiment","requestID":"a11fc23410b03d30a5222c828b36b34b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0d23ab00-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1424,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1424,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.300791,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0d230ec0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616023,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0d230ec0-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1425,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1425,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.717127,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0d235ce0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616023,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"0d235ce0-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1426,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d1c0e2e-bbec-4587-8f2c-44cdf962cced","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f343b438-caca-4b0a-acf5-d51e94fc2dd0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.4814243} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d1c0e2e-bbec-4587-8f2c-44cdf962cced","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d1c0e2e-bbec-4587-8f2c-44cdf962cced","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:01.149640751Z"}]},"request_id":"59858fce-50d6-4242-96b4-d9a1cbcc5533","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.4825146} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1426,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.356951,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0d23ab00-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced","object_type":"device","rebac_allow":false,"scope_allow":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":"0d23ab00-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0d230ec0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd590225-6335-4fe0-af46-d9206dfec4f4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd590225-6335-4fe0-af46-d9206dfec4f4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:01.195034152Z"}]},"request_id":"b49d4e5e-d47c-4885-ae6c-ffa8f551a0e6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.4838808} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0d235ce0-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0d23ab00-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced/signaling 200 20ms","method":"POST","requestID":"0d23ab00-50ec-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0d230ec0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced? 200 25ms","method":"GET","requestID":"0d230ec0-50ec-11ef-8434-2f6d198c7397","responseTime":25,"status":200,"url":"/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0d235ce0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/cd590225-6335-4fe0-af46-d9206dfec4f4? 200 25ms","method":"GET","requestID":"0d235ce0-50ec-11ef-8434-2f6d198c7397","responseTime":25,"status":200,"url":"/devices/cd590225-6335-4fe0-af46-d9206dfec4f4?"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3c508609-d13a-45d9-adbd-d62698685dfd#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3c508609-d13a-45d9-adbd-d62698685dfd","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"d59ad660-12f0-4497-88f0-7042e93dc63e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.495011} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae97faa4-acba-4a92-bb04-c8fd4a375796","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.4953427} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0d272d70-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"a11fc23410b03d30a5222c828b36b34b","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0d27a2a0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1427,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd590225-6335-4fe0-af46-d9206dfec4f4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d05561b1-6f64-4624-9c82-b1208d487dea","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.5010626} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1428,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1427,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.459326,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0d272d70-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4","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 | {"data":{"experiment":"http://localhost/experiments/3c508609-d13a-45d9-adbd-d62698685dfd","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"a11fc23410b03d30a5222c828b36b34b"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0d272d70-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:27:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1212","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a11fc23410b03d30a5222c828b36b34b"} experiment-1 | {"level":"info","message":"POST /experiments? 201 145ms","method":"POST","requestID":"a11fc23410b03d30a5222c828b36b34b","responseTime":145,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d1c0e2e-bbec-4587-8f2c-44cdf962cced","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f1a09723-cfc8-484a-a0e7-621e0be74e6b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.5039423} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1428,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.6251,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0d27a2a0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced","object_type":"device","rebac_allow":false,"scope_allow":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":"0d27a2a0-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0d272d70-50ec-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8","level":"info","message":"auth send jwt","requestID":"558b38fb1d648433638c13e3c5420edf"} device-1 | {"level":"info","message":"POST /devices/cd590225-6335-4fe0-af46-d9206dfec4f4/signaling 200 13ms","method":"POST","requestID":"0d272d70-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/cd590225-6335-4fe0-af46-d9206dfec4f4/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"558b38fb1d648433638c13e3c5420edf","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"558b38fb1d648433638c13e3c5420edf"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0d27a2a0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced/signaling 200 14ms","method":"POST","requestID":"0d27a2a0-50ec-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1429,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1429,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.796562,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"558b38fb1d648433638c13e3c5420edf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616023,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0d2a3ab0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"558b38fb1d648433638c13e3c5420edf","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1430,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd590225-6335-4fe0-af46-d9206dfec4f4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"781d669f-09e7-4c6b-94ff-c599489e607e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.5196395} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d1c0e2e-bbec-4587-8f2c-44cdf962cced","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d1c0e2e-bbec-4587-8f2c-44cdf962cced","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:01.149640751Z"}]},"request_id":"7888896c-5d15-478a-b4c1-4dfec5e513fb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.5200558} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"558b38fb1d648433638c13e3c5420edf","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1430,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.332433,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0d2a3ab0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4","object_type":"device","rebac_allow":false,"scope_allow":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":"0d2a3ab0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"558b38fb1d648433638c13e3c5420edf"} gateway-1 | {"time_local":"02/Aug/2024:16:27:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"558b38fb1d648433638c13e3c5420edf"} device-1 | {"level":"info","message":"GET /devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced? 200 15ms","method":"GET","requestID":"558b38fb1d648433638c13e3c5420edf","responseTime":15,"status":200,"url":"/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0d2a3ab0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/cd590225-6335-4fe0-af46-d9206dfec4f4/signaling 200 11ms","method":"POST","requestID":"0d2a3ab0-50ec-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/cd590225-6335-4fe0-af46-d9206dfec4f4/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3c508609-d13a-45d9-adbd-d62698685dfd"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"a11fc23410b03d30a5222c828b36b34b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0d2c3680-50ec-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8","level":"info","message":"auth send jwt","requestID":"84ba3fb3b17339752ab1f2c4811b68b8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"84ba3fb3b17339752ab1f2c4811b68b8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0d2c84a0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1431,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"84ba3fb3b17339752ab1f2c4811b68b8"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1431,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.795031,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0d2c3680-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616023,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0d2c3680-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1432,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1432,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.823053,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0d2c84a0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616023,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0d2c84a0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1433,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1433,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.929221,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"84ba3fb3b17339752ab1f2c4811b68b8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616023,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"84ba3fb3b17339752ab1f2c4811b68b8","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d1c0e2e-bbec-4587-8f2c-44cdf962cced","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d1c0e2e-bbec-4587-8f2c-44cdf962cced","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:01.149640751Z"}]},"request_id":"6549fdfc-0b07-497b-9b4b-4f28f1a5dabf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.5370696} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0d2c3680-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd590225-6335-4fe0-af46-d9206dfec4f4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd590225-6335-4fe0-af46-d9206dfec4f4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:01.195034152Z"}]},"request_id":"3d2a444c-959b-462a-bf3a-ba79d079d1bb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.538713} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0d2c84a0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd590225-6335-4fe0-af46-d9206dfec4f4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd590225-6335-4fe0-af46-d9206dfec4f4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:01.195034152Z"}]},"request_id":"3802e010-e888-4107-8859-30aeb78850c1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.5405645} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"84ba3fb3b17339752ab1f2c4811b68b8","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0d2c3680-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced? 200 14ms","method":"GET","requestID":"0d2c3680-50ec-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0d2c84a0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/cd590225-6335-4fe0-af46-d9206dfec4f4? 200 15ms","method":"GET","requestID":"0d2c84a0-50ec-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/cd590225-6335-4fe0-af46-d9206dfec4f4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"84ba3fb3b17339752ab1f2c4811b68b8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3c508609-d13a-45d9-adbd-d62698685dfd"},"level":"info","message":"Building connection plan","requestID":"a11fc23410b03d30a5222c828b36b34b"} 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":"30e3e974-93a2-409a-9296-fc088101a45a"},{"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":"252d2d27-e755-4194-b2d4-55691d3ca05d"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"96bfa07c-c4c3-4e5c-91f7-c34f650f3e5c"}]},"level":"info","message":"Built pairwise service configurations","requestID":"a11fc23410b03d30a5222c828b36b34b"} gateway-1 | {"time_local":"02/Aug/2024:16:27:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cd590225-6335-4fe0-af46-d9206dfec4f4? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"84ba3fb3b17339752ab1f2c4811b68b8"} device-1 | {"level":"info","message":"GET /devices/cd590225-6335-4fe0-af46-d9206dfec4f4? 200 15ms","method":"GET","requestID":"84ba3fb3b17339752ab1f2c4811b68b8","responseTime":15,"status":200,"url":"/devices/cd590225-6335-4fe0-af46-d9206dfec4f4?"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"0d2f1cb0-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"0d2f1cb0-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"0d2f1cb0-50ec-11ef-a432-47ab85bb6d58","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/006b3fcf-ba7c-41f7-a5c6-e0571ed83523?id=1e29c6d8-dae7-4ad5-926b-94a13cfc0c84","ws://localhost/rooms/006b3fcf-ba7c-41f7-a5c6-e0571ed83523?id=4668cafe-4c37-451e-a63c-f6ec1e7ac69e"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"a11fc23410b03d30a5222c828b36b34b"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"0d2f91e0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1434,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1434,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.684282,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0d2f91e0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616023,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0d2f91e0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"02603dd7-32f1-41dd-8117-ed612a3cc07f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.5631769} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6b02c474-5a8a-460e-8c81-c6326f87ef89","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.5634232} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"0d2f91e0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"0d2f91e0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"0d2f91e0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b3026371-d50a-4fa1-92c3-602e862f01aa'","requestID":"0d2f91e0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b3026371-d50a-4fa1-92c3-602e862f01aa'","requestID":"0d2f91e0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"0d2f91e0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"0d2f91e0-50ec-11ef-8434-2f6d198c7397","responseTime":25,"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":"0d2f91e0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b3026371-d50a-4fa1-92c3-602e862f01aa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b3026371-d50a-4fa1-92c3-602e862f01aa","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"0d351020-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"4668cafe-4c37-451e-a63c-f6ec1e7ac69e\" in room \"http://localhost/rooms/006b3fcf-ba7c-41f7-a5c6-e0571ed83523\"","requestID":"0d351020-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"0d351020-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"0d355e40-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1e29c6d8-dae7-4ad5-926b-94a13cfc0c84\" in room \"http://localhost/rooms/006b3fcf-ba7c-41f7-a5c6-e0571ed83523\"","requestID":"0d355e40-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"0d355e40-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1e29c6d8-dae7-4ad5-926b-94a13cfc0c84\" in room \"http://localhost/rooms/006b3fcf-ba7c-41f7-a5c6-e0571ed83523\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1e29c6d8-dae7-4ad5-926b-94a13cfc0c84\" in room \"http://localhost/rooms/006b3fcf-ba7c-41f7-a5c6-e0571ed83523\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"32e03c22a45af026c1be71f71e99493a","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":"32e03c22a45af026c1be71f71e99493a","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1e29c6d8-dae7-4ad5-926b-94a13cfc0c84\" in room \"http://localhost/rooms/006b3fcf-ba7c-41f7-a5c6-e0571ed83523\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1e29c6d8-dae7-4ad5-926b-94a13cfc0c84\" in room \"http://localhost/rooms/006b3fcf-ba7c-41f7-a5c6-e0571ed83523\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1e29c6d8-dae7-4ad5-926b-94a13cfc0c84\" in room \"http://localhost/rooms/006b3fcf-ba7c-41f7-a5c6-e0571ed83523\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1e29c6d8-dae7-4ad5-926b-94a13cfc0c84\" in room \"http://localhost/rooms/006b3fcf-ba7c-41f7-a5c6-e0571ed83523\""} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/b3026371-d50a-4fa1-92c3-602e862f01aa"}}},"level":"info","message":"received a callback","requestID":"32e03c22a45af026c1be71f71e99493a"} device-1 | {"data":{"peerconnection":"b3026371-d50a-4fa1-92c3-602e862f01aa","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"32e03c22a45af026c1be71f71e99493a","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27: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.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"32e03c22a45af026c1be71f71e99493a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3c508609-d13a-45d9-adbd-d62698685dfd"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"a11fc23410b03d30a5222c828b36b34b"} device-1 | {"data":{"peerconnection":"b3026371-d50a-4fa1-92c3-602e862f01aa","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0d384470-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1435,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d1c0e2e-bbec-4587-8f2c-44cdf962cced","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dcf84da4-242d-4656-9e7c-68bbaf0815c7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.611465} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1435,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.682772,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0d384470-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced","object_type":"device","rebac_allow":false,"scope_allow":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":"0d384470-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b3026371-d50a-4fa1-92c3-602e862f01aa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b3026371-d50a-4fa1-92c3-602e862f01aa","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0d384470-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced/signaling 200 18ms","method":"POST","requestID":"0d384470-50ec-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e17f2e40c9ce9a7d330cdc938ff0f1da","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":"e17f2e40c9ce9a7d330cdc938ff0f1da","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0d3b51b0-50ec-11ef-8434-2f6d198c7397"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/b3026371-d50a-4fa1-92c3-602e862f01aa"}}},"level":"info","message":"received a callback","requestID":"e17f2e40c9ce9a7d330cdc938ff0f1da"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1436,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd590225-6335-4fe0-af46-d9206dfec4f4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6b98cea8-ee40-43c4-8373-ef4e3d4aa88d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.631312} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1436,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.369366,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0d3b51b0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4","object_type":"device","rebac_allow":false,"scope_allow":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":"0d3b51b0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"0d3c1500-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1437,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0d3b51b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/cd590225-6335-4fe0-af46-d9206dfec4f4/signaling 200 9ms","method":"POST","requestID":"0d3b51b0-50ec-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/cd590225-6335-4fe0-af46-d9206dfec4f4/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb3026371-d50a-4fa1-92c3-602e862f01aa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"21a4183d-5d19-4425-98af-830eff34c4da","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.6367543} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1437,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.564232,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b3026371-d50a-4fa1-92c3-602e862f01aa","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0d3c1500-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b3026371-d50a-4fa1-92c3-602e862f01aa","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":"0d3c1500-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"0d3c1500-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/b3026371-d50a-4fa1-92c3-602e862f01aa 200 8ms","method":"GET","requestID":"0d3c1500-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/peerconnections/b3026371-d50a-4fa1-92c3-602e862f01aa"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 25ms","method":"POST","requestID":"e17f2e40c9ce9a7d330cdc938ff0f1da","responseTime":25,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27: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.029","http_referrer":"","http_user_agent":"node-fetch","requestID":"e17f2e40c9ce9a7d330cdc938ff0f1da"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0d3f4950-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1438,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd590225-6335-4fe0-af46-d9206dfec4f4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"de1312e6-5906-4a09-ab73-0a4447ac10fd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.657242} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1438,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.12683,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0d3f4950-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4","object_type":"device","rebac_allow":false,"scope_allow":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":"0d3f4950-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0d3f4950-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/cd590225-6335-4fe0-af46-d9206dfec4f4/signaling 200 7ms","method":"POST","requestID":"0d3f4950-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/devices/cd590225-6335-4fe0-af46-d9206dfec4f4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0d40cff0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1439,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d1c0e2e-bbec-4587-8f2c-44cdf962cced","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"db31288e-7860-4d21-bab7-8d4f619414ae","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.6673713} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1439,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.138923,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0d40cff0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced","object_type":"device","rebac_allow":false,"scope_allow":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":"0d40cff0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0d40cff0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced/signaling 200 8ms","method":"POST","requestID":"0d40cff0-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8","level":"info","message":"auth send jwt","requestID":"14f53d2a5a1213782db728ed610584f4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"14f53d2a5a1213782db728ed610584f4","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/3c508609-d13a-45d9-adbd-d62698685dfd","requestID":"14f53d2a5a1213782db728ed610584f4"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1440,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1440,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.834562,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3c508609-d13a-45d9-adbd-d62698685dfd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"14f53d2a5a1213782db728ed610584f4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/3c508609-d13a-45d9-adbd-d62698685dfd","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616023,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"14f53d2a5a1213782db728ed610584f4","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/3c508609-d13a-45d9-adbd-d62698685dfd","requestID":"14f53d2a5a1213782db728ed610584f4"} experiment-1 | {"level":"info","message":"GET /experiments/3c508609-d13a-45d9-adbd-d62698685dfd 200 13ms","method":"GET","requestID":"14f53d2a5a1213782db728ed610584f4","responseTime":13,"status":200,"url":"/experiments/3c508609-d13a-45d9-adbd-d62698685dfd"} gateway-1 | {"time_local":"02/Aug/2024:16:27:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/3c508609-d13a-45d9-adbd-d62698685dfd HTTP/1.1","status": "200","body_bytes_sent":"1285","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"14f53d2a5a1213782db728ed610584f4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8","level":"info","message":"auth send jwt","requestID":"12946b7e7cccef5e032ee2ec3b9b2af7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"12946b7e7cccef5e032ee2ec3b9b2af7","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/3c508609-d13a-45d9-adbd-d62698685dfd","requestID":"12946b7e7cccef5e032ee2ec3b9b2af7"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1441,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1441,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.702054,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3c508609-d13a-45d9-adbd-d62698685dfd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"12946b7e7cccef5e032ee2ec3b9b2af7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/3c508609-d13a-45d9-adbd-d62698685dfd","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616023,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"12946b7e7cccef5e032ee2ec3b9b2af7","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3c508609-d13a-45d9-adbd-d62698685dfd"},"level":"info","message":"Attempting to finish experiment","requestID":"12946b7e7cccef5e032ee2ec3b9b2af7"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"0d4b5740-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1442,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1442,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.149399,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b3026371-d50a-4fa1-92c3-602e862f01aa","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0d4b5740-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/b3026371-d50a-4fa1-92c3-602e862f01aa","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616023,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0d4b5740-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b3026371-d50a-4fa1-92c3-602e862f01aa","device":"1d1c0e2e-bbec-4587-8f2c-44cdf962cced","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b3026371-d50a-4fa1-92c3-602e862f01aa","device":"cd590225-6335-4fe0-af46-d9206dfec4f4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"1e29c6d8-dae7-4ad5-926b-94a13cfc0c84\" in room \"http://localhost/rooms/006b3fcf-ba7c-41f7-a5c6-e0571ed83523\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"1e29c6d8-dae7-4ad5-926b-94a13cfc0c84\" from room \"http://localhost/rooms/006b3fcf-ba7c-41f7-a5c6-e0571ed83523\""} gateway-1 | {"time_local":"02/Aug/2024:16:27:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/006b3fcf-ba7c-41f7-a5c6-e0571ed83523?id=1e29c6d8-dae7-4ad5-926b-94a13cfc0c84 HTTP/1.1","status": "101","body_bytes_sent":"874","request_time":"0.166","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":"9311295b33d89bf530da9a5556d88d70"} gateway-1 | {"time_local":"02/Aug/2024:16:27:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/006b3fcf-ba7c-41f7-a5c6-e0571ed83523?id=4668cafe-4c37-451e-a63c-f6ec1e7ac69e HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.167","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":"ac44c5d390e80dbd8280db81157a148e"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b3026371-d50a-4fa1-92c3-602e862f01aa' to 'http://localhost/callbacks/experiment'"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"4668cafe-4c37-451e-a63c-f6ec1e7ac69e\" in room \"http://localhost/rooms/006b3fcf-ba7c-41f7-a5c6-e0571ed83523\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"4668cafe-4c37-451e-a63c-f6ec1e7ac69e\" from room \"http://localhost/rooms/006b3fcf-ba7c-41f7-a5c6-e0571ed83523\""} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b3026371-d50a-4fa1-92c3-602e862f01aa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b3026371-d50a-4fa1-92c3-602e862f01aa","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb3026371-d50a-4fa1-92c3-602e862f01aa': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb3026371-d50a-4fa1-92c3-602e862f01aa","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"307aed50-b96c-474d-8c75-d8d4c3117ccf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.7550917} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"77c216fd-70fc-425e-83ed-218c58f62dc8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.7553568} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a4626b0a636171341a23f06d0034df5b","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":"a4626b0a636171341a23f06d0034df5b","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"0d4b5740-50ec-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5afe107e5009cfbe916d19545bc0e900","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":"5afe107e5009cfbe916d19545bc0e900","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/b3026371-d50a-4fa1-92c3-602e862f01aa"}}},"level":"info","message":"received a callback","requestID":"a4626b0a636171341a23f06d0034df5b"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/b3026371-d50a-4fa1-92c3-602e862f01aa"}}},"level":"info","message":"received a callback","requestID":"5afe107e5009cfbe916d19545bc0e900"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"0d4b5740-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/b3026371-d50a-4fa1-92c3-602e862f01aa 204 45ms","method":"DELETE","requestID":"0d4b5740-50ec-11ef-8434-2f6d198c7397","responseTime":45,"status":204,"url":"/peerconnections/b3026371-d50a-4fa1-92c3-602e862f01aa"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3c508609-d13a-45d9-adbd-d62698685dfd"},"level":"info","message":"Successfully finished experiment","requestID":"12946b7e7cccef5e032ee2ec3b9b2af7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0d55de90-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1443,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcd590225-6335-4fe0-af46-d9206dfec4f4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"49f51636-390e-4221-b9c0-1246c11b9d4f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.8086655} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1443,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.688593,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0d55de90-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cd590225-6335-4fe0-af46-d9206dfec4f4","object_type":"device","rebac_allow":false,"scope_allow":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":"0d55de90-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3c508609-d13a-45d9-adbd-d62698685dfd': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3c508609-d13a-45d9-adbd-d62698685dfd","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"c5878ccf-82a7-4d9a-bbc3-7196cd804bb6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.816225} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0d55de90-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/cd590225-6335-4fe0-af46-d9206dfec4f4/signaling 200 16ms","method":"POST","requestID":"0d55de90-50ec-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/cd590225-6335-4fe0-af46-d9206dfec4f4/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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fd7bef90-f856-4488-a7e1-748aab8cb8ea","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.816771} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"12946b7e7cccef5e032ee2ec3b9b2af7","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0d58c4c0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1444,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d1c0e2e-bbec-4587-8f2c-44cdf962cced","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4a0c9ef4-d638-4353-b004-e3f1f3388d3a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.8282902} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1444,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.020899,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0d58c4c0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced","object_type":"device","rebac_allow":false,"scope_allow":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":"0d58c4c0-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0d58c4c0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced/signaling 200 15ms","method":"POST","requestID":"0d58c4c0-50ec-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/3c508609-d13a-45d9-adbd-d62698685dfd","requestID":"12946b7e7cccef5e032ee2ec3b9b2af7"} gateway-1 | {"time_local":"02/Aug/2024:16:27:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/3c508609-d13a-45d9-adbd-d62698685dfd 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":"12946b7e7cccef5e032ee2ec3b9b2af7"} experiment-1 | {"level":"info","message":"DELETE /experiments/3c508609-d13a-45d9-adbd-d62698685dfd 204 160ms","method":"DELETE","requestID":"12946b7e7cccef5e032ee2ec3b9b2af7","responseTime":160,"status":204,"url":"/experiments/3c508609-d13a-45d9-adbd-d62698685dfd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 124ms","method":"POST","requestID":"a4626b0a636171341a23f06d0034df5b","responseTime":124,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27: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":"a4626b0a636171341a23f06d0034df5b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"5afe107e5009cfbe916d19545bc0e900","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27: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.128","http_referrer":"","http_user_agent":"node-fetch","requestID":"5afe107e5009cfbe916d19545bc0e900"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8","level":"info","message":"auth send jwt","requestID":"e6089eae334b9296d32f2982ab5de56d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e6089eae334b9296d32f2982ab5de56d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e6089eae334b9296d32f2982ab5de56d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1445,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1445,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.857419,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} gateway-1 | {"time_local":"02/Aug/2024:16:27:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1745","request_time":"0.671","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":"6b07d635bab6a757829b9041ba6a619f"} gateway-1 | {"time_local":"02/Aug/2024:16:27:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1744","request_time":"0.659","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":"77c04fb574d798b957b5904b037ec2e3"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e6089eae334b9296d32f2982ab5de56d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616023,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e6089eae334b9296d32f2982ab5de56d","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/cd590225-6335-4fe0-af46-d9206dfec4f4' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/1d1c0e2e-bbec-4587-8f2c-44cdf962cced' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F286aff4a-57f0-495c-8c2b-2f81e7ec228d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9324eb5d-459c-4816-95c3-15207dbaf7e8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.9179} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e6089eae334b9296d32f2982ab5de56d","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5fbcf101-d248-4263-9f00-0a74783184b1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.9219658} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e6089eae334b9296d32f2982ab5de56d","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F286aff4a-57f0-495c-8c2b-2f81e7ec228d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"434d2400-03bf-429a-8090-1d27f96097ef","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.9329803} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ec4e32b0-aa10-4e1c-b0d9-44d204a8a954","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.9330971} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"e6089eae334b9296d32f2982ab5de56d","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F286aff4a-57f0-495c-8c2b-2f81e7ec228d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F286aff4a-57f0-495c-8c2b-2f81e7ec228d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:03.932952410Z"}]},"request_id":"bb150402-a0cb-42e7-a63e-56c3e0646eb7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.9366884} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e6089eae334b9296d32f2982ab5de56d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e6089eae334b9296d32f2982ab5de56d"} gateway-1 | {"time_local":"02/Aug/2024:16:27:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e6089eae334b9296d32f2982ab5de56d"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"e6089eae334b9296d32f2982ab5de56d","responseTime":52,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8","level":"info","message":"auth send jwt","requestID":"31d9d774b3d299aa0db7b998d084d566"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"31d9d774b3d299aa0db7b998d084d566","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"31d9d774b3d299aa0db7b998d084d566"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1446,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1446,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.795699,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"31d9d774b3d299aa0db7b998d084d566","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616023,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyM30.94aBGr6WRb-6c45OlQHYr71_kIvykGTxXx67pd830z8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"31d9d774b3d299aa0db7b998d084d566","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F214495c1-27c7-4d9f-9d9f-33bfd2719291","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"93d7b1b5-4856-445b-866f-0234548f5696","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.9647756} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"31d9d774b3d299aa0db7b998d084d566","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"23eae11e-afc1-4b46-b4e4-dac2872ed35a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.97061} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"31d9d774b3d299aa0db7b998d084d566","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F214495c1-27c7-4d9f-9d9f-33bfd2719291","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"8c9f623a-e5eb-44c9-91d8-5d48693fe67f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.9806507} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"575a9fbe-03c3-4b7b-876e-9b333aabfdeb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.9808242} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"31d9d774b3d299aa0db7b998d084d566","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F214495c1-27c7-4d9f-9d9f-33bfd2719291","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F214495c1-27c7-4d9f-9d9f-33bfd2719291","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:03.980615802Z"}]},"request_id":"3075232c-c1f2-4c27-be7f-0dee723c2e96","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616023.985458} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"31d9d774b3d299aa0db7b998d084d566","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"31d9d774b3d299aa0db7b998d084d566"} gateway-1 | {"time_local":"02/Aug/2024:16:27:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"31d9d774b3d299aa0db7b998d084d566"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"31d9d774b3d299aa0db7b998d084d566","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNH0.WqJbwIF66u0MjFTpR8KMhqKoESy6RWH_2C0tiWGANkY","level":"info","message":"auth send jwt","requestID":"9dd88b6bcf3db4ad2fa662a47f472520"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9dd88b6bcf3db4ad2fa662a47f472520","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"9dd88b6bcf3db4ad2fa662a47f472520"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1447,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1447,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.984449,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"9dd88b6bcf3db4ad2fa662a47f472520","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616024,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNH0.WqJbwIF66u0MjFTpR8KMhqKoESy6RWH_2C0tiWGANkY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9dd88b6bcf3db4ad2fa662a47f472520","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F214495c1-27c7-4d9f-9d9f-33bfd2719291","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F214495c1-27c7-4d9f-9d9f-33bfd2719291","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:03.980615802Z"}]},"request_id":"392bec93-597a-4fc4-913c-2ccbf06b7c6f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616024.5076778} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9dd88b6bcf3db4ad2fa662a47f472520","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"db08ff2c-1350-40be-bce4-bab5315ce97f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616024.5135863} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"9dd88b6bcf3db4ad2fa662a47f472520","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F214495c1-27c7-4d9f-9d9f-33bfd2719291","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F214495c1-27c7-4d9f-9d9f-33bfd2719291","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:03.980615802Z"}]},"request_id":"68a803c0-7eb2-45c7-a3be-ddec6b02c238","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616024.5262682} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9dd88b6bcf3db4ad2fa662a47f472520","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"9dd88b6bcf3db4ad2fa662a47f472520"} device-1 | {"level":"info","message":"PATCH /devices/214495c1-27c7-4d9f-9d9f-33bfd2719291 200 33ms","method":"PATCH","requestID":"9dd88b6bcf3db4ad2fa662a47f472520","responseTime":33,"status":200,"url":"/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291"} gateway-1 | {"time_local":"02/Aug/2024:16:27:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/214495c1-27c7-4d9f-9d9f-33bfd2719291 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"9dd88b6bcf3db4ad2fa662a47f472520"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNH0.WqJbwIF66u0MjFTpR8KMhqKoESy6RWH_2C0tiWGANkY","level":"info","message":"auth send jwt","requestID":"413d599f94a232d524c130f2860cfa58"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"413d599f94a232d524c130f2860cfa58","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"413d599f94a232d524c130f2860cfa58"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1448,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:04Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1448,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.272347,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"413d599f94a232d524c130f2860cfa58","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616024,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNH0.WqJbwIF66u0MjFTpR8KMhqKoESy6RWH_2C0tiWGANkY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"413d599f94a232d524c130f2860cfa58","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"413d599f94a232d524c130f2860cfa58"} device-1 | {"level":"info","message":"POST /devices/214495c1-27c7-4d9f-9d9f-33bfd2719291/websocket 200 19ms","method":"POST","requestID":"413d599f94a232d524c130f2860cfa58","responseTime":19,"status":200,"url":"/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:27:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/214495c1-27c7-4d9f-9d9f-33bfd2719291/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"413d599f94a232d524c130f2860cfa58"} device-1 | {"level":"info","message":"device 'http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"92cd63a47f7e4d8edd0dd3239a69b55e","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":"92cd63a47f7e4d8edd0dd3239a69b55e","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:27:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d/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":"92cd63a47f7e4d8edd0dd3239a69b55e"} device-1 | {"level":"info","message":"OPTIONS /devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d/websocket 200 1ms","method":"OPTIONS","requestID":"92cd63a47f7e4d8edd0dd3239a69b55e","responseTime":1,"status":200,"url":"/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4","level":"info","message":"auth send jwt","requestID":"f8b4be8cf7a30107215da56e0e06972b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f8b4be8cf7a30107215da56e0e06972b","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f8b4be8cf7a30107215da56e0e06972b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1449,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1449,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.156512,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f8b4be8cf7a30107215da56e0e06972b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616026,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f8b4be8cf7a30107215da56e0e06972b","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f8b4be8cf7a30107215da56e0e06972b"} gateway-1 | {"time_local":"02/Aug/2024:16:27:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d/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":"f8b4be8cf7a30107215da56e0e06972b"} device-1 | {"level":"info","message":"POST /devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d/websocket 200 23ms","method":"POST","requestID":"f8b4be8cf7a30107215da56e0e06972b","responseTime":23,"status":200,"url":"/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dc2aa07ed30c25aa6c07417efbf0ae14","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":"dc2aa07ed30c25aa6c07417efbf0ae14","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:27:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"dc2aa07ed30c25aa6c07417efbf0ae14"} device-1 | {"level":"info","message":"OPTIONS /devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d? 200 1ms","method":"OPTIONS","requestID":"dc2aa07ed30c25aa6c07417efbf0ae14","responseTime":1,"status":200,"url":"/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4","level":"info","message":"auth send jwt","requestID":"1ed35249843cab86df575145395460a1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1ed35249843cab86df575145395460a1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"1ed35249843cab86df575145395460a1"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1450,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1450,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.949706,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1ed35249843cab86df575145395460a1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616026,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1ed35249843cab86df575145395460a1","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F286aff4a-57f0-495c-8c2b-2f81e7ec228d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F286aff4a-57f0-495c-8c2b-2f81e7ec228d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:03.932952410Z"}]},"request_id":"5adfd70c-4f9f-4f22-ab94-da35f5e7b91f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.1079078} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1ed35249843cab86df575145395460a1","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ba9ae89b-a590-4853-bee9-9b5a81f025ae","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.113384} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"1ed35249843cab86df575145395460a1","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F286aff4a-57f0-495c-8c2b-2f81e7ec228d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F286aff4a-57f0-495c-8c2b-2f81e7ec228d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:03.932952410Z"}]},"request_id":"f08b9c3a-1c7e-4d72-9b06-ee5cb879d1be","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.1287394} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1ed35249843cab86df575145395460a1","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"1ed35249843cab86df575145395460a1"} gateway-1 | {"time_local":"02/Aug/2024:16:27:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.046","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":"1ed35249843cab86df575145395460a1"} device-1 | {"level":"info","message":"PATCH /devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d? 200 39ms","method":"PATCH","requestID":"1ed35249843cab86df575145395460a1","responseTime":39,"status":200,"url":"/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4","level":"info","message":"auth send jwt","requestID":"5585f4f8ddc7da2e88057246837e4947"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5585f4f8ddc7da2e88057246837e4947","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5585f4f8ddc7da2e88057246837e4947"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1451,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1451,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.038129,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"5585f4f8ddc7da2e88057246837e4947","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616026,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5585f4f8ddc7da2e88057246837e4947","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F286aff4a-57f0-495c-8c2b-2f81e7ec228d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F286aff4a-57f0-495c-8c2b-2f81e7ec228d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:03.932952410Z"}]},"request_id":"961c5dd6-a44c-4c75-95e3-8a871d9af5be","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.1569736} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5585f4f8ddc7da2e88057246837e4947","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5585f4f8ddc7da2e88057246837e4947"} gateway-1 | {"time_local":"02/Aug/2024:16:27:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5585f4f8ddc7da2e88057246837e4947"} device-1 | {"level":"info","message":"GET /devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d? 200 15ms","method":"GET","requestID":"5585f4f8ddc7da2e88057246837e4947","responseTime":15,"status":200,"url":"/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4","level":"info","message":"auth send jwt","requestID":"52c2403d7cf6eef4fdf62e2ce4d59d19"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"52c2403d7cf6eef4fdf62e2ce4d59d19","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"52c2403d7cf6eef4fdf62e2ce4d59d19"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1452,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1452,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.268215,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"52c2403d7cf6eef4fdf62e2ce4d59d19","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616026,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"52c2403d7cf6eef4fdf62e2ce4d59d19","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F214495c1-27c7-4d9f-9d9f-33bfd2719291","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F214495c1-27c7-4d9f-9d9f-33bfd2719291","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:03.980615802Z"}]},"request_id":"49efa25d-7a9c-4abd-b44e-2fe75722833a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.181852} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"52c2403d7cf6eef4fdf62e2ce4d59d19","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"52c2403d7cf6eef4fdf62e2ce4d59d19"} device-1 | {"level":"info","message":"GET /devices/214495c1-27c7-4d9f-9d9f-33bfd2719291? 200 15ms","method":"GET","requestID":"52c2403d7cf6eef4fdf62e2ce4d59d19","responseTime":15,"status":200,"url":"/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/214495c1-27c7-4d9f-9d9f-33bfd2719291? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"52c2403d7cf6eef4fdf62e2ce4d59d19"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4","level":"info","message":"auth send jwt","requestID":"57d9e26690bf8276713d93e66aaac486"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"57d9e26690bf8276713d93e66aaac486","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"57d9e26690bf8276713d93e66aaac486"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1453,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1453,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.263457,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"57d9e26690bf8276713d93e66aaac486","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616026,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"57d9e26690bf8276713d93e66aaac486","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e13ab66b-6178-49ad-a808-422c3784accd"},"level":"info","message":"Attempting to run experiment","requestID":"57d9e26690bf8276713d93e66aaac486"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e13ab66b-6178-49ad-a808-422c3784accd"},"level":"info","message":"Attempting to book experiment","requestID":"57d9e26690bf8276713d93e66aaac486"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e13ab66b-6178-49ad-a808-422c3784accd"},"level":"info","message":"Successfully booked experiment","requestID":"57d9e26690bf8276713d93e66aaac486"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0ec9b9e0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0eca0800-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1454,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1454,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.121873,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1455,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0ec9b9e0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616026,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0ec9b9e0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1455,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.634688,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0eca0800-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616026,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0eca0800-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F286aff4a-57f0-495c-8c2b-2f81e7ec228d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F286aff4a-57f0-495c-8c2b-2f81e7ec228d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:03.932952410Z"}]},"request_id":"b15afa59-2da5-4304-b31a-48888e843245","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.2526095} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0ec9b9e0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F214495c1-27c7-4d9f-9d9f-33bfd2719291","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F214495c1-27c7-4d9f-9d9f-33bfd2719291","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:03.980615802Z"}]},"request_id":"b5faab7e-cd58-4fc2-b0c2-897942ea5975","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.25362} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0eca0800-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0ec9b9e0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d? 200 25ms","method":"GET","requestID":"0ec9b9e0-50ec-11ef-8434-2f6d198c7397","responseTime":25,"status":200,"url":"/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0eca0800-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/214495c1-27c7-4d9f-9d9f-33bfd2719291? 200 25ms","method":"GET","requestID":"0eca0800-50ec-11ef-8434-2f6d198c7397","responseTime":25,"status":200,"url":"/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e13ab66b-6178-49ad-a808-422c3784accd"},"level":"info","message":"Setting up experiment","requestID":"57d9e26690bf8276713d93e66aaac486"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e13ab66b-6178-49ad-a808-422c3784accd"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"57d9e26690bf8276713d93e66aaac486"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e13ab66b-6178-49ad-a808-422c3784accd"},"level":"info","message":"Successfully locked booking for experiment","requestID":"57d9e26690bf8276713d93e66aaac486"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e13ab66b-6178-49ad-a808-422c3784accd"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"57d9e26690bf8276713d93e66aaac486"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e13ab66b-6178-49ad-a808-422c3784accd"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"57d9e26690bf8276713d93e66aaac486"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e13ab66b-6178-49ad-a808-422c3784accd"},"level":"info","message":"Attempting to update booking for experiment","requestID":"57d9e26690bf8276713d93e66aaac486"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e13ab66b-6178-49ad-a808-422c3784accd"},"level":"info","message":"Successfully updated booking for experiment","requestID":"57d9e26690bf8276713d93e66aaac486"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e13ab66b-6178-49ad-a808-422c3784accd"},"level":"info","message":"Successfully set up experiment","requestID":"57d9e26690bf8276713d93e66aaac486"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0ed52b90-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0ed579b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0ed5a0c0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1456,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1456,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.985451,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e13ab66b-6178-49ad-a808-422c3784accd"},"level":"info","message":"Successfully running experiment","requestID":"57d9e26690bf8276713d93e66aaac486"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1457,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0ed52b90-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616026,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0ed52b90-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1457,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.538776,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0ed579b0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616026,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0ed579b0-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1458,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F286aff4a-57f0-495c-8c2b-2f81e7ec228d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"174bf9c8-8dc2-4a52-972c-6fabb7f42f37","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.3244958} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1458,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.578747,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0ed5a0c0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d","object_type":"device","rebac_allow":false,"scope_allow":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":"0ed5a0c0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F286aff4a-57f0-495c-8c2b-2f81e7ec228d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F286aff4a-57f0-495c-8c2b-2f81e7ec228d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:03.932952410Z"}]},"request_id":"c9564771-9d3a-46ad-9393-121734e513d8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.3273087} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F214495c1-27c7-4d9f-9d9f-33bfd2719291","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F214495c1-27c7-4d9f-9d9f-33bfd2719291","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:03.980615802Z"}]},"request_id":"7d43cd27-eb79-4bbf-8121-36899fda360d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.3288956} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"0ed52b90-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0ed579b0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0ed5a0c0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d/signaling 200 22ms","method":"POST","requestID":"0ed5a0c0-50ec-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0ed52b90-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d? 200 26ms","method":"GET","requestID":"0ed52b90-50ec-11ef-8434-2f6d198c7397","responseTime":26,"status":200,"url":"/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0ed579b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/214495c1-27c7-4d9f-9d9f-33bfd2719291? 200 25ms","method":"GET","requestID":"0ed579b0-50ec-11ef-8434-2f6d198c7397","responseTime":25,"status":200,"url":"/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0ed97150-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0ed9e680-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe13ab66b-6178-49ad-a808-422c3784accd#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe13ab66b-6178-49ad-a808-422c3784accd","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"f4145793-1356-4264-8cce-9e22a6f4d37c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.3433974} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3fdb93e9-cf9f-427d-898c-04a6648ba63f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.344004} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1459,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"57d9e26690bf8276713d93e66aaac486","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F214495c1-27c7-4d9f-9d9f-33bfd2719291","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"74ee3ade-23c6-4c3c-aca7-a553315dc826","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.34818} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1459,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.329548,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0ed97150-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291","object_type":"device","rebac_allow":false,"scope_allow":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":"0ed97150-50ec-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1460,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F286aff4a-57f0-495c-8c2b-2f81e7ec228d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f6737d0d-ecd7-4060-ae2a-f03d4a315c8a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.3544888} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1460,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.165804,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0ed9e680-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d","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":"0ed97150-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/214495c1-27c7-4d9f-9d9f-33bfd2719291/signaling 200 15ms","method":"POST","requestID":"0ed97150-50ec-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0ed9e680-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/e13ab66b-6178-49ad-a808-422c3784accd","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"57d9e26690bf8276713d93e66aaac486"} gateway-1 | {"time_local":"02/Aug/2024:16:27:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.171","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"57d9e26690bf8276713d93e66aaac486"} experiment-1 | {"level":"info","message":"POST /experiments? 201 165ms","method":"POST","requestID":"57d9e26690bf8276713d93e66aaac486","responseTime":165,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0ed9e680-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d/signaling 200 16ms","method":"POST","requestID":"0ed9e680-50ec-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0edcccb0-50ec-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4","level":"info","message":"auth send jwt","requestID":"636774e7aef8dfe4766f8788e48ab2c9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"636774e7aef8dfe4766f8788e48ab2c9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"636774e7aef8dfe4766f8788e48ab2c9"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1461,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1462,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1462,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.018726,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"636774e7aef8dfe4766f8788e48ab2c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616026,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"636774e7aef8dfe4766f8788e48ab2c9","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F214495c1-27c7-4d9f-9d9f-33bfd2719291","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"46349399-a96b-479a-8efb-70ec76056037","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.3685057} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1461,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.50664,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0edcccb0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291","object_type":"device","rebac_allow":false,"scope_allow":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":"0edcccb0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F286aff4a-57f0-495c-8c2b-2f81e7ec228d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F286aff4a-57f0-495c-8c2b-2f81e7ec228d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:03.932952410Z"}]},"request_id":"a2f87ecb-bb3d-4080-bde6-f84f4588c0f2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.3721142} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0edcccb0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/214495c1-27c7-4d9f-9d9f-33bfd2719291/signaling 200 10ms","method":"POST","requestID":"0edcccb0-50ec-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"636774e7aef8dfe4766f8788e48ab2c9","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e13ab66b-6178-49ad-a808-422c3784accd"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"57d9e26690bf8276713d93e66aaac486"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0edea170-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0edec880-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"636774e7aef8dfe4766f8788e48ab2c9"} gateway-1 | {"time_local":"02/Aug/2024:16:27:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"636774e7aef8dfe4766f8788e48ab2c9"} device-1 | {"level":"info","message":"GET /devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d? 200 14ms","method":"GET","requestID":"636774e7aef8dfe4766f8788e48ab2c9","responseTime":14,"status":200,"url":"/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1463,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1464,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1463,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.12242,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0edea170-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616026,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0edea170-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1464,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.978716,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0edec880-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616026,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0edec880-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4","level":"info","message":"auth send jwt","requestID":"c22a704d5691b46300b5d594942a8e0c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c22a704d5691b46300b5d594942a8e0c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c22a704d5691b46300b5d594942a8e0c"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F286aff4a-57f0-495c-8c2b-2f81e7ec228d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F286aff4a-57f0-495c-8c2b-2f81e7ec228d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:03.932952410Z"}]},"request_id":"fbe8ff46-e866-4002-a8d9-a4afd9b11339","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.3838248} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0edea170-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F214495c1-27c7-4d9f-9d9f-33bfd2719291","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F214495c1-27c7-4d9f-9d9f-33bfd2719291","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:03.980615802Z"}]},"request_id":"7a834ee8-dfd1-4d1c-82e3-e331a963e55e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.3850598} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0edec880-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1465,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1465,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.881072,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c22a704d5691b46300b5d594942a8e0c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616026,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"c22a704d5691b46300b5d594942a8e0c","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0edea170-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d? 200 14ms","method":"GET","requestID":"0edea170-50ec-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0edec880-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/214495c1-27c7-4d9f-9d9f-33bfd2719291? 200 16ms","method":"GET","requestID":"0edec880-50ec-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F214495c1-27c7-4d9f-9d9f-33bfd2719291","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F214495c1-27c7-4d9f-9d9f-33bfd2719291","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:03.980615802Z"}]},"request_id":"14bf4351-fce2-49cf-b919-4729bbe900f6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.392709} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e13ab66b-6178-49ad-a808-422c3784accd"},"level":"info","message":"Building connection plan","requestID":"57d9e26690bf8276713d93e66aaac486"} 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":"0ad5f192-5ce6-4d2c-85bd-fac4ae4f3258"},{"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":"f5e68bb7-744d-4ff6-bd47-bb81047f0035"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"7dee47e6-654d-42ef-bc93-1a2d0a6103d0"}]},"level":"info","message":"Built pairwise service configurations","requestID":"57d9e26690bf8276713d93e66aaac486"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c22a704d5691b46300b5d594942a8e0c","responseTime":3,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"0ee1aeb0-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"0ee1aeb0-50ec-11ef-a432-47ab85bb6d58"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c22a704d5691b46300b5d594942a8e0c"} gateway-1 | {"time_local":"02/Aug/2024:16:27:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/214495c1-27c7-4d9f-9d9f-33bfd2719291? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c22a704d5691b46300b5d594942a8e0c"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"0ee1aeb0-50ec-11ef-a432-47ab85bb6d58","responseTime":1,"status":201,"url":"/rooms"} device-1 | {"level":"info","message":"GET /devices/214495c1-27c7-4d9f-9d9f-33bfd2719291? 200 13ms","method":"GET","requestID":"c22a704d5691b46300b5d594942a8e0c","responseTime":13,"status":200,"url":"/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/5bd3a3b2-887c-4da6-9c47-872caf4f7577?id=6f4b23c1-27f3-447e-bd3d-a4ee12fd2bc0","ws://localhost/rooms/5bd3a3b2-887c-4da6-9c47-872caf4f7577?id=7096fccd-8be2-404e-99db-7b835cc60399"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"57d9e26690bf8276713d93e66aaac486"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"0ee24af0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1466,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1466,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.003846,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0ee24af0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616026,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0ee24af0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"b6350e48-8048-4af4-a717-b423d91f8c22","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.4120417} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"95365f30-bbe2-4435-8531-bd1dcb1f02d7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.4123847} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"0ee24af0-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"0ee24af0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"0ee24af0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/37da0049-1ccb-4b28-9268-020b01d3f7ab'","requestID":"0ee24af0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/37da0049-1ccb-4b28-9268-020b01d3f7ab'","requestID":"0ee24af0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"0ee24af0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"0ee24af0-50ec-11ef-8434-2f6d198c7397","responseTime":25,"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":"0ee24af0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/37da0049-1ccb-4b28-9268-020b01d3f7ab' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"37da0049-1ccb-4b28-9268-020b01d3f7ab","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"0ee7f040-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"7096fccd-8be2-404e-99db-7b835cc60399\" in room \"http://localhost/rooms/5bd3a3b2-887c-4da6-9c47-872caf4f7577\"","requestID":"0ee7f040-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"0ee7f040-50ec-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5645eab18c15d9c8898e34f9d10fa876","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":"5645eab18c15d9c8898e34f9d10fa876","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"0ee83e60-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"6f4b23c1-27f3-447e-bd3d-a4ee12fd2bc0\" in room \"http://localhost/rooms/5bd3a3b2-887c-4da6-9c47-872caf4f7577\"","requestID":"0ee83e60-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"0ee83e60-50ec-11ef-a432-47ab85bb6d58"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/37da0049-1ccb-4b28-9268-020b01d3f7ab"}}},"level":"info","message":"received a callback","requestID":"5645eab18c15d9c8898e34f9d10fa876"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"7096fccd-8be2-404e-99db-7b835cc60399\" in room \"http://localhost/rooms/5bd3a3b2-887c-4da6-9c47-872caf4f7577\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"7096fccd-8be2-404e-99db-7b835cc60399\" in room \"http://localhost/rooms/5bd3a3b2-887c-4da6-9c47-872caf4f7577\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"7096fccd-8be2-404e-99db-7b835cc60399\" in room \"http://localhost/rooms/5bd3a3b2-887c-4da6-9c47-872caf4f7577\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"7096fccd-8be2-404e-99db-7b835cc60399\" in room \"http://localhost/rooms/5bd3a3b2-887c-4da6-9c47-872caf4f7577\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"5645eab18c15d9c8898e34f9d10fa876","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27: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.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"5645eab18c15d9c8898e34f9d10fa876"} device-1 | {"data":{"peerconnection":"37da0049-1ccb-4b28-9268-020b01d3f7ab","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e13ab66b-6178-49ad-a808-422c3784accd"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"57d9e26690bf8276713d93e66aaac486"} device-1 | {"data":{"peerconnection":"37da0049-1ccb-4b28-9268-020b01d3f7ab","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0eeb4ba0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1467,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F286aff4a-57f0-495c-8c2b-2f81e7ec228d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0303208b-1d5a-4133-91bb-81c79d22e559","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.4624465} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1467,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.654076,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0eeb4ba0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d","object_type":"device","rebac_allow":false,"scope_allow":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":"0eeb4ba0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/37da0049-1ccb-4b28-9268-020b01d3f7ab' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"37da0049-1ccb-4b28-9268-020b01d3f7ab","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0eeb4ba0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d/signaling 200 19ms","method":"POST","requestID":"0eeb4ba0-50ec-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"323fe27b96e5dcf3ec0fe367e1a9195d","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":"323fe27b96e5dcf3ec0fe367e1a9195d","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0eee7ff0-50ec-11ef-8434-2f6d198c7397"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/37da0049-1ccb-4b28-9268-020b01d3f7ab"}}},"level":"info","message":"received a callback","requestID":"323fe27b96e5dcf3ec0fe367e1a9195d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1468,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F214495c1-27c7-4d9f-9d9f-33bfd2719291","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"81b827b3-8a5a-4a4c-b29f-ec2e7fbc3e79","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.4840837} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1468,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.685256,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"0eef4340-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0eee7ff0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291","object_type":"device","rebac_allow":false,"scope_allow":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":"0eee7ff0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1469,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F37da0049-1ccb-4b28-9268-020b01d3f7ab","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"beab1f38-2aff-4357-9873-5245be4de650","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.4883707} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1469,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.32461,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/37da0049-1ccb-4b28-9268-020b01d3f7ab","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0eef4340-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/37da0049-1ccb-4b28-9268-020b01d3f7ab","object_type":"peerconnection","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":"0eee7ff0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0eef4340-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/214495c1-27c7-4d9f-9d9f-33bfd2719291/signaling 200 11ms","method":"POST","requestID":"0eee7ff0-50ec-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291/signaling"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"0eef4340-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/37da0049-1ccb-4b28-9268-020b01d3f7ab 200 8ms","method":"GET","requestID":"0eef4340-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/peerconnections/37da0049-1ccb-4b28-9268-020b01d3f7ab"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"323fe27b96e5dcf3ec0fe367e1a9195d","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27: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":"323fe27b96e5dcf3ec0fe367e1a9195d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0ef33ae0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1470,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F286aff4a-57f0-495c-8c2b-2f81e7ec228d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"67ff21b6-9b0d-460a-9166-63266528561c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.5160675} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1470,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.774704,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0ef33ae0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d","object_type":"device","rebac_allow":false,"scope_allow":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":"0ef33ae0-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0ef33ae0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d/signaling 200 10ms","method":"POST","requestID":"0ef33ae0-50ec-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0ef50fa0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1471,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F214495c1-27c7-4d9f-9d9f-33bfd2719291","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"da130ab8-7362-4538-b9da-7f0eb17ae58a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.5267003} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1471,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.390213,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0ef50fa0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291","object_type":"device","rebac_allow":false,"scope_allow":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":"0ef50fa0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0ef50fa0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/214495c1-27c7-4d9f-9d9f-33bfd2719291/signaling 200 8ms","method":"POST","requestID":"0ef50fa0-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4","level":"info","message":"auth send jwt","requestID":"e6e46f07c3b2131284aeedc63e1004ff"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e6e46f07c3b2131284aeedc63e1004ff","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/e13ab66b-6178-49ad-a808-422c3784accd","requestID":"e6e46f07c3b2131284aeedc63e1004ff"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1472,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1472,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.027808,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e13ab66b-6178-49ad-a808-422c3784accd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e6e46f07c3b2131284aeedc63e1004ff","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/e13ab66b-6178-49ad-a808-422c3784accd","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616026,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e6e46f07c3b2131284aeedc63e1004ff","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/e13ab66b-6178-49ad-a808-422c3784accd","requestID":"e6e46f07c3b2131284aeedc63e1004ff"} gateway-1 | {"time_local":"02/Aug/2024:16:27:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/e13ab66b-6178-49ad-a808-422c3784accd HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e6e46f07c3b2131284aeedc63e1004ff"} experiment-1 | {"level":"info","message":"GET /experiments/e13ab66b-6178-49ad-a808-422c3784accd 200 13ms","method":"GET","requestID":"e6e46f07c3b2131284aeedc63e1004ff","responseTime":13,"status":200,"url":"/experiments/e13ab66b-6178-49ad-a808-422c3784accd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4","level":"info","message":"auth send jwt","requestID":"4d30e44bd0c44fb859d4d032ce6d43d6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4d30e44bd0c44fb859d4d032ce6d43d6","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/e13ab66b-6178-49ad-a808-422c3784accd","requestID":"4d30e44bd0c44fb859d4d032ce6d43d6"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1473,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1473,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.140908,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e13ab66b-6178-49ad-a808-422c3784accd","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"4d30e44bd0c44fb859d4d032ce6d43d6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/e13ab66b-6178-49ad-a808-422c3784accd","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616026,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4d30e44bd0c44fb859d4d032ce6d43d6","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e13ab66b-6178-49ad-a808-422c3784accd"},"level":"info","message":"Attempting to finish experiment","requestID":"4d30e44bd0c44fb859d4d032ce6d43d6"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"0efdc230-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1474,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1474,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.055252,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/37da0049-1ccb-4b28-9268-020b01d3f7ab","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0efdc230-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/37da0049-1ccb-4b28-9268-020b01d3f7ab","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616026,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0efdc230-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:27:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/5bd3a3b2-887c-4da6-9c47-872caf4f7577?id=7096fccd-8be2-404e-99db-7b835cc60399 HTTP/1.1","status": "101","body_bytes_sent":"436","request_time":"0.155","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"5c2327c78f38f1e93d7badaa042b8020"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"7096fccd-8be2-404e-99db-7b835cc60399\" in room \"http://localhost/rooms/5bd3a3b2-887c-4da6-9c47-872caf4f7577\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"7096fccd-8be2-404e-99db-7b835cc60399\" from room \"http://localhost/rooms/5bd3a3b2-887c-4da6-9c47-872caf4f7577\""} gateway-1 | {"time_local":"02/Aug/2024:16:27:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/5bd3a3b2-887c-4da6-9c47-872caf4f7577?id=6f4b23c1-27f3-447e-bd3d-a4ee12fd2bc0 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.154","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":"784cd7c778418aa8bdb282576ba72a9e"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/37da0049-1ccb-4b28-9268-020b01d3f7ab","device":"286aff4a-57f0-495c-8c2b-2f81e7ec228d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"6f4b23c1-27f3-447e-bd3d-a4ee12fd2bc0\" in room \"http://localhost/rooms/5bd3a3b2-887c-4da6-9c47-872caf4f7577\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"6f4b23c1-27f3-447e-bd3d-a4ee12fd2bc0\" from room \"http://localhost/rooms/5bd3a3b2-887c-4da6-9c47-872caf4f7577\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/37da0049-1ccb-4b28-9268-020b01d3f7ab' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/37da0049-1ccb-4b28-9268-020b01d3f7ab' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"37da0049-1ccb-4b28-9268-020b01d3f7ab","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F37da0049-1ccb-4b28-9268-020b01d3f7ab': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F37da0049-1ccb-4b28-9268-020b01d3f7ab","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"3172cd4a-ab1e-4d7e-b776-9db2793e362e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.595668} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fe627010-8c54-409a-af0a-89b0e945d02b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.5959563} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"871b16f7d650ea4b054c0f17aae261ea","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":"871b16f7d650ea4b054c0f17aae261ea","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"522b1e879641468ee77e8684855aba1a","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":"0efdc230-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"522b1e879641468ee77e8684855aba1a","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/37da0049-1ccb-4b28-9268-020b01d3f7ab"}}},"level":"info","message":"received a callback","requestID":"871b16f7d650ea4b054c0f17aae261ea"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/37da0049-1ccb-4b28-9268-020b01d3f7ab"}}},"level":"info","message":"received a callback","requestID":"522b1e879641468ee77e8684855aba1a"} device-1 | {"data":{"peerconnection":"37da0049-1ccb-4b28-9268-020b01d3f7ab","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"0efdc230-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/37da0049-1ccb-4b28-9268-020b01d3f7ab 204 39ms","method":"DELETE","requestID":"0efdc230-50ec-11ef-8434-2f6d198c7397","responseTime":39,"status":204,"url":"/peerconnections/37da0049-1ccb-4b28-9268-020b01d3f7ab"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e13ab66b-6178-49ad-a808-422c3784accd"},"level":"info","message":"Successfully finished experiment","requestID":"4d30e44bd0c44fb859d4d032ce6d43d6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0f071100-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1475,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F286aff4a-57f0-495c-8c2b-2f81e7ec228d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b6116f1f-15bd-488c-934b-df5cc516dbd5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.646778} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1475,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.679882,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0f071100-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d","object_type":"device","rebac_allow":false,"scope_allow":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":"0f071100-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0f071100-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d/signaling 200 13ms","method":"POST","requestID":"0f071100-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/286aff4a-57f0-495c-8c2b-2f81e7ec228d/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe13ab66b-6178-49ad-a808-422c3784accd': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe13ab66b-6178-49ad-a808-422c3784accd","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"79c17d0c-5d21-4580-83d3-4f60cef6ca37","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.6551373} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"774219d2-f98d-40ae-b0c1-b9243699f2a3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.655538} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0f09a910-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"4d30e44bd0c44fb859d4d032ce6d43d6","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1476,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F214495c1-27c7-4d9f-9d9f-33bfd2719291","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d1f87ca6-27e2-4658-8aad-7a21038854de","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.663423} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1476,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.583967,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0f09a910-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291","object_type":"device","rebac_allow":false,"scope_allow":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":"0f09a910-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0f09a910-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/214495c1-27c7-4d9f-9d9f-33bfd2719291/signaling 200 13ms","method":"POST","requestID":"0f09a910-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/214495c1-27c7-4d9f-9d9f-33bfd2719291/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/e13ab66b-6178-49ad-a808-422c3784accd","requestID":"4d30e44bd0c44fb859d4d032ce6d43d6"} gateway-1 | {"time_local":"02/Aug/2024:16:27:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/e13ab66b-6178-49ad-a808-422c3784accd 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":"4d30e44bd0c44fb859d4d032ce6d43d6"} gateway-1 | {"time_local":"02/Aug/2024:16:27:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1743","request_time":"2.170","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"327abd80409b21074c10f52f900ff63b"} experiment-1 | {"level":"info","message":"DELETE /experiments/e13ab66b-6178-49ad-a808-422c3784accd 204 161ms","method":"DELETE","requestID":"4d30e44bd0c44fb859d4d032ce6d43d6","responseTime":161,"status":204,"url":"/experiments/e13ab66b-6178-49ad-a808-422c3784accd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"871b16f7d650ea4b054c0f17aae261ea","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27: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.136","http_referrer":"","http_user_agent":"node-fetch","requestID":"871b16f7d650ea4b054c0f17aae261ea"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"522b1e879641468ee77e8684855aba1a","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27: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.137","http_referrer":"","http_user_agent":"node-fetch","requestID":"522b1e879641468ee77e8684855aba1a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4","level":"info","message":"auth send jwt","requestID":"3ff04222f5cf0ef899915f4587d9138a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3ff04222f5cf0ef899915f4587d9138a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3ff04222f5cf0ef899915f4587d9138a"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1477,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1477,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.177484,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} gateway-1 | {"time_local":"02/Aug/2024:16:27:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2070","request_time":"0.690","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":"d9f0061150f1e6b07ed92e9555df2b5c"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"3ff04222f5cf0ef899915f4587d9138a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616026,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3ff04222f5cf0ef899915f4587d9138a","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/214495c1-27c7-4d9f-9d9f-33bfd2719291' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47acef53-0645-4b7b-8ad6-d1af7f336cd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c57cfb73-7f88-480d-8d64-799b5f23bedc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.7572463} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3ff04222f5cf0ef899915f4587d9138a","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/286aff4a-57f0-495c-8c2b-2f81e7ec228d' 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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"578b9e1b-8048-4613-91dc-80b12e678d86","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.7624207} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"3ff04222f5cf0ef899915f4587d9138a","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47acef53-0645-4b7b-8ad6-d1af7f336cd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"0282525e-35ae-4a36-a0c1-132e8acc5e5f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.778513} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fa2af256-cd5e-495b-8589-cdf9eec247f8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.7790194} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"3ff04222f5cf0ef899915f4587d9138a","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47acef53-0645-4b7b-8ad6-d1af7f336cd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47acef53-0645-4b7b-8ad6-d1af7f336cd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:06.778473738Z"}]},"request_id":"eb61cc30-dc85-4871-b63f-36c1453343e2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.7838254} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3ff04222f5cf0ef899915f4587d9138a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3ff04222f5cf0ef899915f4587d9138a"} gateway-1 | {"time_local":"02/Aug/2024:16:27:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3ff04222f5cf0ef899915f4587d9138a"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"3ff04222f5cf0ef899915f4587d9138a","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4","level":"info","message":"auth send jwt","requestID":"3d82daf1a2c1610b1f31788a36e7e9f5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3d82daf1a2c1610b1f31788a36e7e9f5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3d82daf1a2c1610b1f31788a36e7e9f5"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1478,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1478,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.733523,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"3d82daf1a2c1610b1f31788a36e7e9f5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616026,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyNn0.IA_3YFFeoacD1b9VSWNGwRXDLc6hWO_3MPQUsmM8qC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3d82daf1a2c1610b1f31788a36e7e9f5","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4054ba0e-6b22-4350-85e5-fad49e23c797","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"71e118a7-3bcd-4c2a-ba28-8deea7649e82","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.80849} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3d82daf1a2c1610b1f31788a36e7e9f5","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"47da517e-6cc2-45c3-a6e1-d3ed3e4aff93","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.8131003} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"3d82daf1a2c1610b1f31788a36e7e9f5","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4054ba0e-6b22-4350-85e5-fad49e23c797","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"6907a1e7-85f3-4091-8d1b-a2bcf3a69499","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.824439} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8ab881e2-fbb8-4b86-ad66-00538067d746","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.8245573} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"3d82daf1a2c1610b1f31788a36e7e9f5","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4054ba0e-6b22-4350-85e5-fad49e23c797","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4054ba0e-6b22-4350-85e5-fad49e23c797","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:06.824406769Z"}]},"request_id":"5ba8922d-7474-47dd-b01a-632a9f76e554","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616026.8283834} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3d82daf1a2c1610b1f31788a36e7e9f5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3d82daf1a2c1610b1f31788a36e7e9f5"} gateway-1 | {"time_local":"02/Aug/2024:16:27:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3d82daf1a2c1610b1f31788a36e7e9f5"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"3d82daf1a2c1610b1f31788a36e7e9f5","responseTime":39,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyN30.1UN1EL3Bt9igr_seoOkPONxOkotm-y2L4HKjTJf5rsU","level":"info","message":"auth send jwt","requestID":"82cc81dc4a5aeefcfa07a41fa2d16a1e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"82cc81dc4a5aeefcfa07a41fa2d16a1e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"82cc81dc4a5aeefcfa07a41fa2d16a1e"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1479,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:07Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1479,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.28094,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"82cc81dc4a5aeefcfa07a41fa2d16a1e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616027,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyN30.1UN1EL3Bt9igr_seoOkPONxOkotm-y2L4HKjTJf5rsU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"82cc81dc4a5aeefcfa07a41fa2d16a1e","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4054ba0e-6b22-4350-85e5-fad49e23c797","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4054ba0e-6b22-4350-85e5-fad49e23c797","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:06.824406769Z"}]},"request_id":"9adceec5-ddfb-4bb1-8467-0066f8d232a3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616027.3556082} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"82cc81dc4a5aeefcfa07a41fa2d16a1e","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"33ed314b-86d5-4c4e-a9a2-45f340e20079","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616027.3617437} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"82cc81dc4a5aeefcfa07a41fa2d16a1e","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4054ba0e-6b22-4350-85e5-fad49e23c797","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4054ba0e-6b22-4350-85e5-fad49e23c797","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:06.824406769Z"}]},"request_id":"de0d13be-7712-41a1-919d-c8c17eab936d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616027.3756692} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"82cc81dc4a5aeefcfa07a41fa2d16a1e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"82cc81dc4a5aeefcfa07a41fa2d16a1e"} gateway-1 | {"time_local":"02/Aug/2024:16:27:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4054ba0e-6b22-4350-85e5-fad49e23c797 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.042","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"82cc81dc4a5aeefcfa07a41fa2d16a1e"} device-1 | {"level":"info","message":"PATCH /devices/4054ba0e-6b22-4350-85e5-fad49e23c797 200 36ms","method":"PATCH","requestID":"82cc81dc4a5aeefcfa07a41fa2d16a1e","responseTime":36,"status":200,"url":"/devices/4054ba0e-6b22-4350-85e5-fad49e23c797"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyN30.1UN1EL3Bt9igr_seoOkPONxOkotm-y2L4HKjTJf5rsU","level":"info","message":"auth send jwt","requestID":"c6955731e1d034139077a179bfecf99e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c6955731e1d034139077a179bfecf99e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c6955731e1d034139077a179bfecf99e"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1480,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:07Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1480,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.145352,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c6955731e1d034139077a179bfecf99e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616027,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyN30.1UN1EL3Bt9igr_seoOkPONxOkotm-y2L4HKjTJf5rsU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c6955731e1d034139077a179bfecf99e","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c6955731e1d034139077a179bfecf99e"} device-1 | {"level":"info","message":"POST /devices/4054ba0e-6b22-4350-85e5-fad49e23c797/websocket 200 22ms","method":"POST","requestID":"c6955731e1d034139077a179bfecf99e","responseTime":22,"status":200,"url":"/devices/4054ba0e-6b22-4350-85e5-fad49e23c797/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:27:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4054ba0e-6b22-4350-85e5-fad49e23c797/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"c6955731e1d034139077a179bfecf99e"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0649b707b064d8317e63864890930dd6","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":"0649b707b064d8317e63864890930dd6","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:27:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6/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":"0649b707b064d8317e63864890930dd6"} device-1 | {"level":"info","message":"OPTIONS /devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6/websocket 200 1ms","method":"OPTIONS","requestID":"0649b707b064d8317e63864890930dd6","responseTime":1,"status":200,"url":"/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOH0.Csnh7nZXWhJCk2l2npBAMHdywkSO1w0cETqQgE1qwJM","level":"info","message":"auth send jwt","requestID":"83bca0c0dc1b0ba24eb623bb3aca0e44"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"83bca0c0dc1b0ba24eb623bb3aca0e44","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"83bca0c0dc1b0ba24eb623bb3aca0e44"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1481,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:08Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1481,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.19079,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"83bca0c0dc1b0ba24eb623bb3aca0e44","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616028,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOH0.Csnh7nZXWhJCk2l2npBAMHdywkSO1w0cETqQgE1qwJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"83bca0c0dc1b0ba24eb623bb3aca0e44","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"83bca0c0dc1b0ba24eb623bb3aca0e44"} device-1 | {"level":"info","message":"POST /devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6/websocket 200 20ms","method":"POST","requestID":"83bca0c0dc1b0ba24eb623bb3aca0e44","responseTime":20,"status":200,"url":"/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:27:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6/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":"83bca0c0dc1b0ba24eb623bb3aca0e44"} device-1 | {"level":"info","message":"device 'http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"12a54a7414e2f382e7cf09134b79608b","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":"12a54a7414e2f382e7cf09134b79608b","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:27:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"12a54a7414e2f382e7cf09134b79608b"} device-1 | {"level":"info","message":"OPTIONS /devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6? 200 1ms","method":"OPTIONS","requestID":"12a54a7414e2f382e7cf09134b79608b","responseTime":1,"status":200,"url":"/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOH0.Csnh7nZXWhJCk2l2npBAMHdywkSO1w0cETqQgE1qwJM","level":"info","message":"auth send jwt","requestID":"30304209175b80e48cb6a9ac52c458dd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"30304209175b80e48cb6a9ac52c458dd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"30304209175b80e48cb6a9ac52c458dd"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1482,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:08Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1482,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.20217,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"30304209175b80e48cb6a9ac52c458dd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616028,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOH0.Csnh7nZXWhJCk2l2npBAMHdywkSO1w0cETqQgE1qwJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"30304209175b80e48cb6a9ac52c458dd","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47acef53-0645-4b7b-8ad6-d1af7f336cd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47acef53-0645-4b7b-8ad6-d1af7f336cd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:06.778473738Z"}]},"request_id":"2e20c12c-a3e7-4da9-bb4f-fc16f6e1b689","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616028.9071345} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"30304209175b80e48cb6a9ac52c458dd","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"db0cf23d-a309-4baf-8db9-9904176453e3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616028.914085} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"30304209175b80e48cb6a9ac52c458dd","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47acef53-0645-4b7b-8ad6-d1af7f336cd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47acef53-0645-4b7b-8ad6-d1af7f336cd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:06.778473738Z"}]},"request_id":"2aedf518-199e-4cf4-ab81-bd99eda9aec6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616028.927259} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"30304209175b80e48cb6a9ac52c458dd","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"30304209175b80e48cb6a9ac52c458dd"} gateway-1 | {"time_local":"02/Aug/2024:16:27:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.043","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":"30304209175b80e48cb6a9ac52c458dd"} device-1 | {"level":"info","message":"PATCH /devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6? 200 37ms","method":"PATCH","requestID":"30304209175b80e48cb6a9ac52c458dd","responseTime":37,"status":200,"url":"/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOH0.Csnh7nZXWhJCk2l2npBAMHdywkSO1w0cETqQgE1qwJM","level":"info","message":"auth send jwt","requestID":"78735a262d98c8775e1db8a9aaa689f0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"78735a262d98c8775e1db8a9aaa689f0","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"78735a262d98c8775e1db8a9aaa689f0"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1483,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:08Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1483,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.086431,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"78735a262d98c8775e1db8a9aaa689f0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616028,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOH0.Csnh7nZXWhJCk2l2npBAMHdywkSO1w0cETqQgE1qwJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"78735a262d98c8775e1db8a9aaa689f0","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47acef53-0645-4b7b-8ad6-d1af7f336cd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47acef53-0645-4b7b-8ad6-d1af7f336cd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:06.778473738Z"}]},"request_id":"fd1033f6-21a0-4748-a587-300e4e9ff8ee","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616028.9556139} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"78735a262d98c8775e1db8a9aaa689f0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"78735a262d98c8775e1db8a9aaa689f0"} device-1 | {"level":"info","message":"GET /devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6? 200 16ms","method":"GET","requestID":"78735a262d98c8775e1db8a9aaa689f0","responseTime":16,"status":200,"url":"/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"78735a262d98c8775e1db8a9aaa689f0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOH0.Csnh7nZXWhJCk2l2npBAMHdywkSO1w0cETqQgE1qwJM","level":"info","message":"auth send jwt","requestID":"085d90ee149401867fcfd040b3f0315a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"085d90ee149401867fcfd040b3f0315a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"085d90ee149401867fcfd040b3f0315a"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1484,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:08Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1484,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.172235,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"085d90ee149401867fcfd040b3f0315a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616028,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOH0.Csnh7nZXWhJCk2l2npBAMHdywkSO1w0cETqQgE1qwJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"085d90ee149401867fcfd040b3f0315a","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4054ba0e-6b22-4350-85e5-fad49e23c797","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4054ba0e-6b22-4350-85e5-fad49e23c797","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:06.824406769Z"}]},"request_id":"36022739-d323-47de-85fb-628f03e1613b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616028.9806612} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"085d90ee149401867fcfd040b3f0315a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"085d90ee149401867fcfd040b3f0315a"} device-1 | {"level":"info","message":"GET /devices/4054ba0e-6b22-4350-85e5-fad49e23c797? 200 17ms","method":"GET","requestID":"085d90ee149401867fcfd040b3f0315a","responseTime":17,"status":200,"url":"/devices/4054ba0e-6b22-4350-85e5-fad49e23c797?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4054ba0e-6b22-4350-85e5-fad49e23c797? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"085d90ee149401867fcfd040b3f0315a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOH0.Csnh7nZXWhJCk2l2npBAMHdywkSO1w0cETqQgE1qwJM","level":"info","message":"auth send jwt","requestID":"34bb2a59767714094024d6be31154aa8"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"34bb2a59767714094024d6be31154aa8","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"34bb2a59767714094024d6be31154aa8"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1485,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:08Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1485,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.121318,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:08Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"34bb2a59767714094024d6be31154aa8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616028,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOH0.Csnh7nZXWhJCk2l2npBAMHdywkSO1w0cETqQgE1qwJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"34bb2a59767714094024d6be31154aa8","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca"},"level":"info","message":"Attempting to run experiment","requestID":"34bb2a59767714094024d6be31154aa8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca"},"level":"info","message":"Attempting to book experiment","requestID":"34bb2a59767714094024d6be31154aa8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca"},"level":"info","message":"Successfully booked experiment","requestID":"34bb2a59767714094024d6be31154aa8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"107483b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1074d1d0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1486,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1486,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.301892,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"107483b0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616028,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOH0.Csnh7nZXWhJCk2l2npBAMHdywkSO1w0cETqQgE1qwJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"107483b0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1487,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1487,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.713985,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1074d1d0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616028,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOH0.Csnh7nZXWhJCk2l2npBAMHdywkSO1w0cETqQgE1qwJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1074d1d0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47acef53-0645-4b7b-8ad6-d1af7f336cd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47acef53-0645-4b7b-8ad6-d1af7f336cd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:06.778473738Z"}]},"request_id":"90618e16-6fea-4db7-a11e-a935001ff34b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.045466} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"107483b0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4054ba0e-6b22-4350-85e5-fad49e23c797","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4054ba0e-6b22-4350-85e5-fad49e23c797","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:06.824406769Z"}]},"request_id":"42e8324c-3e0d-4471-93a0-cd0652d2cfc8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.046541} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1074d1d0-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"107483b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6? 200 18ms","method":"GET","requestID":"107483b0-50ec-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1074d1d0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/4054ba0e-6b22-4350-85e5-fad49e23c797? 200 18ms","method":"GET","requestID":"1074d1d0-50ec-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/4054ba0e-6b22-4350-85e5-fad49e23c797?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca"},"level":"info","message":"Setting up experiment","requestID":"34bb2a59767714094024d6be31154aa8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"34bb2a59767714094024d6be31154aa8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca"},"level":"info","message":"Successfully locked booking for experiment","requestID":"34bb2a59767714094024d6be31154aa8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"34bb2a59767714094024d6be31154aa8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"34bb2a59767714094024d6be31154aa8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca"},"level":"info","message":"Attempting to update booking for experiment","requestID":"34bb2a59767714094024d6be31154aa8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca"},"level":"info","message":"Successfully updated booking for experiment","requestID":"34bb2a59767714094024d6be31154aa8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca"},"level":"info","message":"Successfully set up experiment","requestID":"34bb2a59767714094024d6be31154aa8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"107ebce0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"107ee3f0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"107f3210-50ec-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca"},"level":"info","message":"Successfully running experiment","requestID":"34bb2a59767714094024d6be31154aa8"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1488,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1489,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1488,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.968949,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1489,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.559002,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"107ebce0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616028,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOH0.Csnh7nZXWhJCk2l2npBAMHdywkSO1w0cETqQgE1qwJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"107ebce0-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"107ee3f0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616028,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOH0.Csnh7nZXWhJCk2l2npBAMHdywkSO1w0cETqQgE1qwJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"107ee3f0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47acef53-0645-4b7b-8ad6-d1af7f336cd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47acef53-0645-4b7b-8ad6-d1af7f336cd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:06.778473738Z"}]},"request_id":"6aae4858-9aee-4383-965c-4984fd1bbe29","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.1153057} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4054ba0e-6b22-4350-85e5-fad49e23c797","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4054ba0e-6b22-4350-85e5-fad49e23c797","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:06.824406769Z"}]},"request_id":"48be1a81-2741-4202-9a24-27c37b2134ea","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.1164296} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"107ebce0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"107ee3f0-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:55962","level":"info","msg":"Received request.","req_id":1490,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47acef53-0645-4b7b-8ad6-d1af7f336cd6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1379e008-bcb6-4195-864e-71cf15a95997","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.1186247} authorization-1 | {"client_addr":"127.0.0.1:55962","level":"info","msg":"Sent response.","req_id":1490,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.003492,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"107f3210-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6","object_type":"device","rebac_allow":false,"scope_allow":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":"107f3210-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"107ebce0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6? 200 20ms","method":"GET","requestID":"107ebce0-50ec-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"107ee3f0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/4054ba0e-6b22-4350-85e5-fad49e23c797? 200 19ms","method":"GET","requestID":"107ee3f0-50ec-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/4054ba0e-6b22-4350-85e5-fad49e23c797?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"107f3210-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6/signaling 200 19ms","method":"POST","requestID":"107f3210-50ec-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"10821840-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fee6eeafd-a74c-47bb-8cd5-a80bbfb299ca#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fee6eeafd-a74c-47bb-8cd5-a80bbfb299ca","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"db37c4f8-de96-4204-a7a0-a60b532795ca","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.1251507} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"66cc6967-df93-4363-bd87-021a51e157ea","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.1253884} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"10826660-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"34bb2a59767714094024d6be31154aa8","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1491,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1492,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47acef53-0645-4b7b-8ad6-d1af7f336cd6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"65e2b3e0-ab5c-483b-a5cd-ff0c2fa4a04d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.1304855} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1491,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.927964,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"10821840-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6","object_type":"device","rebac_allow":false,"scope_allow":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":"10821840-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4054ba0e-6b22-4350-85e5-fad49e23c797","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7f9ff033-3211-45e0-8cee-572a9f87c384","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.1332035} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1492,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.027572,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"34bb2a59767714094024d6be31154aa8"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"10826660-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797","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":"02/Aug/2024:16:27:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"34bb2a59767714094024d6be31154aa8"} experiment-1 | {"level":"info","message":"POST /experiments? 201 141ms","method":"POST","requestID":"34bb2a59767714094024d6be31154aa8","responseTime":141,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"10826660-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"10821840-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6/signaling 200 13ms","method":"POST","requestID":"10821840-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOX0.VO_Ac23Y_5fxS-rbhBvoEV7YQluSdxH4bWqjFDXK7Os","level":"info","message":"auth send jwt","requestID":"842e8249d880a3a7546d0a4d6ec7a529"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"10826660-50ec-11ef-8434-2f6d198c7397"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"842e8249d880a3a7546d0a4d6ec7a529","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/4054ba0e-6b22-4350-85e5-fad49e23c797/signaling 200 12ms","method":"POST","requestID":"10826660-50ec-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/4054ba0e-6b22-4350-85e5-fad49e23c797/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"10846230-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"842e8249d880a3a7546d0a4d6ec7a529"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1493,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1494,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1494,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.637724,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"842e8249d880a3a7546d0a4d6ec7a529","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616029,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOX0.VO_Ac23Y_5fxS-rbhBvoEV7YQluSdxH4bWqjFDXK7Os"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"842e8249d880a3a7546d0a4d6ec7a529","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4054ba0e-6b22-4350-85e5-fad49e23c797","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cadb54d1-7e06-49d8-bc6d-c3e4aa23dd03","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.1438825} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1493,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.471936,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"10846230-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797","object_type":"device","rebac_allow":false,"scope_allow":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":"10846230-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"10846230-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/4054ba0e-6b22-4350-85e5-fad49e23c797/signaling 200 10ms","method":"POST","requestID":"10846230-50ec-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/4054ba0e-6b22-4350-85e5-fad49e23c797/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"34bb2a59767714094024d6be31154aa8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"108636f0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47acef53-0645-4b7b-8ad6-d1af7f336cd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47acef53-0645-4b7b-8ad6-d1af7f336cd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:06.778473738Z"}]},"request_id":"b1ae31c1-a683-47a2-9057-8f9a96404be0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.1474955} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"10865e00-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"842e8249d880a3a7546d0a4d6ec7a529","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"842e8249d880a3a7546d0a4d6ec7a529"} gateway-1 | {"time_local":"02/Aug/2024:16:27:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"842e8249d880a3a7546d0a4d6ec7a529"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1495,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} device-1 | {"level":"info","message":"GET /devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6? 200 15ms","method":"GET","requestID":"842e8249d880a3a7546d0a4d6ec7a529","responseTime":15,"status":200,"url":"/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1495,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.160583,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1496,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"108636f0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616028,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOH0.Csnh7nZXWhJCk2l2npBAMHdywkSO1w0cETqQgE1qwJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"108636f0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1496,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.899274,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"10865e00-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616028,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOH0.Csnh7nZXWhJCk2l2npBAMHdywkSO1w0cETqQgE1qwJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"10865e00-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOX0.VO_Ac23Y_5fxS-rbhBvoEV7YQluSdxH4bWqjFDXK7Os","level":"info","message":"auth send jwt","requestID":"f50fc85e67eedd00aeda7079f3f2dd69"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f50fc85e67eedd00aeda7079f3f2dd69","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f50fc85e67eedd00aeda7079f3f2dd69"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47acef53-0645-4b7b-8ad6-d1af7f336cd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47acef53-0645-4b7b-8ad6-d1af7f336cd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:06.778473738Z"}]},"request_id":"233cb06b-b9a4-4140-b655-5c225cc6e6c3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.162557} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"108636f0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4054ba0e-6b22-4350-85e5-fad49e23c797","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4054ba0e-6b22-4350-85e5-fad49e23c797","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:06.824406769Z"}]},"request_id":"5b57bb38-f426-46e5-8a19-691710cb8215","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.1640596} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"10865e00-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1497,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1497,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.834117,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f50fc85e67eedd00aeda7079f3f2dd69","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616029,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOX0.VO_Ac23Y_5fxS-rbhBvoEV7YQluSdxH4bWqjFDXK7Os"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f50fc85e67eedd00aeda7079f3f2dd69","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"108636f0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6? 200 19ms","method":"GET","requestID":"108636f0-50ec-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"10865e00-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/4054ba0e-6b22-4350-85e5-fad49e23c797? 200 22ms","method":"GET","requestID":"10865e00-50ec-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/4054ba0e-6b22-4350-85e5-fad49e23c797?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca"},"level":"info","message":"Building connection plan","requestID":"34bb2a59767714094024d6be31154aa8"} 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":"681ea4d1-b4f8-4cac-b8da-dfe67292f233"},{"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":"1b0f9244-c4b5-471e-b2f9-9252b3e47dec"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"8e1b63b3-afa5-4b60-a16b-13d745e9ad59"}]},"level":"info","message":"Built pairwise service configurations","requestID":"34bb2a59767714094024d6be31154aa8"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"108a2e90-50ec-11ef-a432-47ab85bb6d58"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4054ba0e-6b22-4350-85e5-fad49e23c797","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4054ba0e-6b22-4350-85e5-fad49e23c797","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:06.824406769Z"}]},"request_id":"564c0d18-95a5-4577-8f64-1d32383da378","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.177378} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"108a2e90-50ec-11ef-a432-47ab85bb6d58"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f50fc85e67eedd00aeda7079f3f2dd69","responseTime":3,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"POST /rooms 201 2ms","method":"POST","requestID":"108a2e90-50ec-11ef-a432-47ab85bb6d58","responseTime":2,"status":201,"url":"/rooms"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f50fc85e67eedd00aeda7079f3f2dd69"} gateway-1 | {"time_local":"02/Aug/2024:16:27:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4054ba0e-6b22-4350-85e5-fad49e23c797? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f50fc85e67eedd00aeda7079f3f2dd69"} device-1 | {"level":"info","message":"GET /devices/4054ba0e-6b22-4350-85e5-fad49e23c797? 200 21ms","method":"GET","requestID":"f50fc85e67eedd00aeda7079f3f2dd69","responseTime":21,"status":200,"url":"/devices/4054ba0e-6b22-4350-85e5-fad49e23c797?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/a9bde3fe-7956-4353-b112-9bcbe63c5c83?id=1d813117-fc0d-483d-8a11-94d05dd1f08d","ws://localhost/rooms/a9bde3fe-7956-4353-b112-9bcbe63c5c83?id=b4ab34ec-ccb2-45e3-8375-52eeccfd4fb3"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"34bb2a59767714094024d6be31154aa8"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"108b6710-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1498,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1498,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.658864,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"108b6710-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616028,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOH0.Csnh7nZXWhJCk2l2npBAMHdywkSO1w0cETqQgE1qwJM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"108b6710-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"50623d98-e405-4bf5-9332-243e5f7e5055","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.1963928} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"72d0c509-8dd9-49f2-a18d-01cf1744956d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.1965804} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"108b6710-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"108b6710-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"108b6710-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/ab3003ec-61b8-4f8c-870b-94a1c60b89ea'","requestID":"108b6710-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/ab3003ec-61b8-4f8c-870b-94a1c60b89ea'","requestID":"108b6710-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"108b6710-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 22ms","method":"POST","requestID":"108b6710-50ec-11ef-8434-2f6d198c7397","responseTime":22,"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":"108b6710-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ab3003ec-61b8-4f8c-870b-94a1c60b89ea' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ab3003ec-61b8-4f8c-870b-94a1c60b89ea","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"10904910-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1d813117-fc0d-483d-8a11-94d05dd1f08d\" in room \"http://localhost/rooms/a9bde3fe-7956-4353-b112-9bcbe63c5c83\"","requestID":"10904910-50ec-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ba6a36f8cfbe01ed4c9d6eaab3bfee73","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":"ba6a36f8cfbe01ed4c9d6eaab3bfee73","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"10904910-50ec-11ef-a432-47ab85bb6d58"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/ab3003ec-61b8-4f8c-870b-94a1c60b89ea"}}},"level":"info","message":"received a callback","requestID":"ba6a36f8cfbe01ed4c9d6eaab3bfee73"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"1090be40-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b4ab34ec-ccb2-45e3-8375-52eeccfd4fb3\" in room \"http://localhost/rooms/a9bde3fe-7956-4353-b112-9bcbe63c5c83\"","requestID":"1090be40-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"1090be40-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1d813117-fc0d-483d-8a11-94d05dd1f08d\" in room \"http://localhost/rooms/a9bde3fe-7956-4353-b112-9bcbe63c5c83\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1d813117-fc0d-483d-8a11-94d05dd1f08d\" in room \"http://localhost/rooms/a9bde3fe-7956-4353-b112-9bcbe63c5c83\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1d813117-fc0d-483d-8a11-94d05dd1f08d\" in room \"http://localhost/rooms/a9bde3fe-7956-4353-b112-9bcbe63c5c83\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1d813117-fc0d-483d-8a11-94d05dd1f08d\" in room \"http://localhost/rooms/a9bde3fe-7956-4353-b112-9bcbe63c5c83\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1d813117-fc0d-483d-8a11-94d05dd1f08d\" in room \"http://localhost/rooms/a9bde3fe-7956-4353-b112-9bcbe63c5c83\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1d813117-fc0d-483d-8a11-94d05dd1f08d\" in room \"http://localhost/rooms/a9bde3fe-7956-4353-b112-9bcbe63c5c83\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1d813117-fc0d-483d-8a11-94d05dd1f08d\" in room \"http://localhost/rooms/a9bde3fe-7956-4353-b112-9bcbe63c5c83\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1d813117-fc0d-483d-8a11-94d05dd1f08d\" in room \"http://localhost/rooms/a9bde3fe-7956-4353-b112-9bcbe63c5c83\""} device-1 | {"data":{"peerconnection":"ab3003ec-61b8-4f8c-870b-94a1c60b89ea","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"ba6a36f8cfbe01ed4c9d6eaab3bfee73","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27:09 +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":"ba6a36f8cfbe01ed4c9d6eaab3bfee73"} device-1 | {"data":{"peerconnection":"ab3003ec-61b8-4f8c-870b-94a1c60b89ea","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"34bb2a59767714094024d6be31154aa8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1094dcf0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1499,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47acef53-0645-4b7b-8ad6-d1af7f336cd6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"43a33a9f-f75d-443e-be22-23095c7a5c0d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.2518325} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1499,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.460339,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1094dcf0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6","object_type":"device","rebac_allow":false,"scope_allow":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":"1094dcf0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ab3003ec-61b8-4f8c-870b-94a1c60b89ea' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ab3003ec-61b8-4f8c-870b-94a1c60b89ea","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1094dcf0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6/signaling 200 10ms","method":"POST","requestID":"1094dcf0-50ec-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ede16b579cb558deb0c62419e25b84cf","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":"ede16b579cb558deb0c62419e25b84cf","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1096b1b0-50ec-11ef-8434-2f6d198c7397"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/ab3003ec-61b8-4f8c-870b-94a1c60b89ea"}}},"level":"info","message":"received a callback","requestID":"ede16b579cb558deb0c62419e25b84cf"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1500,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4054ba0e-6b22-4350-85e5-fad49e23c797","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"73b6236c-9440-457e-96e6-43a9236a4104","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.2629435} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1500,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.213551,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1096b1b0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797","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":"getPeerconnectionsByPeerconnectionId called","requestID":"10977500-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1096b1b0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1501,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fab3003ec-61b8-4f8c-870b-94a1c60b89ea","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"332ee57a-d0c5-41fb-b88f-7d477860cc4c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.2690232} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1501,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.292289,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ab3003ec-61b8-4f8c-870b-94a1c60b89ea","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"10977500-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/ab3003ec-61b8-4f8c-870b-94a1c60b89ea","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":"10977500-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"10977500-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/ab3003ec-61b8-4f8c-870b-94a1c60b89ea 200 8ms","method":"GET","requestID":"10977500-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/peerconnections/ab3003ec-61b8-4f8c-870b-94a1c60b89ea"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1096b1b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/4054ba0e-6b22-4350-85e5-fad49e23c797/signaling 200 14ms","method":"POST","requestID":"1096b1b0-50ec-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/4054ba0e-6b22-4350-85e5-fad49e23c797/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 26ms","method":"POST","requestID":"ede16b579cb558deb0c62419e25b84cf","responseTime":26,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27:09 +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.029","http_referrer":"","http_user_agent":"node-fetch","requestID":"ede16b579cb558deb0c62419e25b84cf"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"109ad060-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1502,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4054ba0e-6b22-4350-85e5-fad49e23c797","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8e90f1d4-77d5-4317-a3ba-52a49cc49982","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.2901413} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1502,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.219841,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"109ad060-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797","object_type":"device","rebac_allow":false,"scope_allow":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":"109ad060-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"109ad060-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/4054ba0e-6b22-4350-85e5-fad49e23c797/signaling 200 8ms","method":"POST","requestID":"109ad060-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/4054ba0e-6b22-4350-85e5-fad49e23c797/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"109c2ff0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1503,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47acef53-0645-4b7b-8ad6-d1af7f336cd6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"63329064-ff6f-4ab0-830e-746d7085cdd4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.299067} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1503,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.108707,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"109c2ff0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6","object_type":"device","rebac_allow":false,"scope_allow":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":"109c2ff0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"109c2ff0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6/signaling 200 8ms","method":"POST","requestID":"109c2ff0-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOX0.VO_Ac23Y_5fxS-rbhBvoEV7YQluSdxH4bWqjFDXK7Os","level":"info","message":"auth send jwt","requestID":"5dbe8e8635bf6f9d52f5dec725573902"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5dbe8e8635bf6f9d52f5dec725573902","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca","requestID":"5dbe8e8635bf6f9d52f5dec725573902"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1504,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1504,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.321495,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"5dbe8e8635bf6f9d52f5dec725573902","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616029,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOX0.VO_Ac23Y_5fxS-rbhBvoEV7YQluSdxH4bWqjFDXK7Os"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5dbe8e8635bf6f9d52f5dec725573902","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca","requestID":"5dbe8e8635bf6f9d52f5dec725573902"} gateway-1 | {"time_local":"02/Aug/2024:16:27:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5dbe8e8635bf6f9d52f5dec725573902"} experiment-1 | {"level":"info","message":"GET /experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca 200 13ms","method":"GET","requestID":"5dbe8e8635bf6f9d52f5dec725573902","responseTime":13,"status":200,"url":"/experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOX0.VO_Ac23Y_5fxS-rbhBvoEV7YQluSdxH4bWqjFDXK7Os","level":"info","message":"auth send jwt","requestID":"a0a758812063500a3895facb9ab62f0d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a0a758812063500a3895facb9ab62f0d","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca","requestID":"a0a758812063500a3895facb9ab62f0d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1505,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1505,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.273302,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a0a758812063500a3895facb9ab62f0d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616029,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOX0.VO_Ac23Y_5fxS-rbhBvoEV7YQluSdxH4bWqjFDXK7Os"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a0a758812063500a3895facb9ab62f0d","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca"},"level":"info","message":"Attempting to finish experiment","requestID":"a0a758812063500a3895facb9ab62f0d"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"10a6de50-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1506,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1506,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.193396,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ab3003ec-61b8-4f8c-870b-94a1c60b89ea","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"10a6de50-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/ab3003ec-61b8-4f8c-870b-94a1c60b89ea","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616029,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOX0.VO_Ac23Y_5fxS-rbhBvoEV7YQluSdxH4bWqjFDXK7Os"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"10a6de50-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:27:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/a9bde3fe-7956-4353-b112-9bcbe63c5c83?id=1d813117-fc0d-483d-8a11-94d05dd1f08d HTTP/1.1","status": "101","body_bytes_sent":"872","request_time":"0.164","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"29a504c942d371a6368d24623b4be10f"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"1d813117-fc0d-483d-8a11-94d05dd1f08d\" in room \"http://localhost/rooms/a9bde3fe-7956-4353-b112-9bcbe63c5c83\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"1d813117-fc0d-483d-8a11-94d05dd1f08d\" from room \"http://localhost/rooms/a9bde3fe-7956-4353-b112-9bcbe63c5c83\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ab3003ec-61b8-4f8c-870b-94a1c60b89ea' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/ab3003ec-61b8-4f8c-870b-94a1c60b89ea' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ab3003ec-61b8-4f8c-870b-94a1c60b89ea","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"02/Aug/2024:16:27:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/a9bde3fe-7956-4353-b112-9bcbe63c5c83?id=b4ab34ec-ccb2-45e3-8375-52eeccfd4fb3 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.165","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":"7c86145a1b2ad72405f4dc3c923b5264"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"b4ab34ec-ccb2-45e3-8375-52eeccfd4fb3\" in room \"http://localhost/rooms/a9bde3fe-7956-4353-b112-9bcbe63c5c83\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"b4ab34ec-ccb2-45e3-8375-52eeccfd4fb3\" from room \"http://localhost/rooms/a9bde3fe-7956-4353-b112-9bcbe63c5c83\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ab3003ec-61b8-4f8c-870b-94a1c60b89ea","device":"47acef53-0645-4b7b-8ad6-d1af7f336cd6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b1536b921a46144a4b493a8b3fda9963","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":"b1536b921a46144a4b493a8b3fda9963","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"60265484b085aaabd9dc92096b3853dc","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/ab3003ec-61b8-4f8c-870b-94a1c60b89ea"}}},"level":"info","message":"received a callback","requestID":"b1536b921a46144a4b493a8b3fda9963"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"60265484b085aaabd9dc92096b3853dc","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fab3003ec-61b8-4f8c-870b-94a1c60b89ea': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fab3003ec-61b8-4f8c-870b-94a1c60b89ea","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"103a8366-6799-4ca4-8ef2-88cdf1dd0249","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.3925865} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"18d5a625-5a43-4f53-a005-7f2ff7700876","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.392747} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/ab3003ec-61b8-4f8c-870b-94a1c60b89ea"}}},"level":"info","message":"received a callback","requestID":"60265484b085aaabd9dc92096b3853dc"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"10a6de50-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"ab3003ec-61b8-4f8c-870b-94a1c60b89ea","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"10a6de50-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/ab3003ec-61b8-4f8c-870b-94a1c60b89ea 204 47ms","method":"DELETE","requestID":"10a6de50-50ec-11ef-8434-2f6d198c7397","responseTime":47,"status":204,"url":"/peerconnections/ab3003ec-61b8-4f8c-870b-94a1c60b89ea"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca"},"level":"info","message":"Successfully finished experiment","requestID":"a0a758812063500a3895facb9ab62f0d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"10b13e90-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1507,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4054ba0e-6b22-4350-85e5-fad49e23c797","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bb5c8284-855d-467f-b9a5-821dd01a6776","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.4400017} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1507,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.812594,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"10b13e90-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4054ba0e-6b22-4350-85e5-fad49e23c797","object_type":"device","rebac_allow":false,"scope_allow":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":"10b13e90-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"10b13e90-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/4054ba0e-6b22-4350-85e5-fad49e23c797/signaling 200 13ms","method":"POST","requestID":"10b13e90-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/4054ba0e-6b22-4350-85e5-fad49e23c797/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fee6eeafd-a74c-47bb-8cd5-a80bbfb299ca': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fee6eeafd-a74c-47bb-8cd5-a80bbfb299ca","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"bd351979-b88f-48b3-95ea-e276c4937d42","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.4472356} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ce5e792e-cea6-4947-87e8-cc20ae6b89e9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.4474833} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"10b3af90-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"a0a758812063500a3895facb9ab62f0d","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1508,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47acef53-0645-4b7b-8ad6-d1af7f336cd6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b4ce49bc-199c-4bad-a2b9-747181369178","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.4556751} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1508,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.453088,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"10b3af90-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6","object_type":"device","rebac_allow":false,"scope_allow":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":"10b3af90-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"10b3af90-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6/signaling 200 13ms","method":"POST","requestID":"10b3af90-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca","requestID":"a0a758812063500a3895facb9ab62f0d"} gateway-1 | {"time_local":"02/Aug/2024:16:27:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca 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":"a0a758812063500a3895facb9ab62f0d"} gateway-1 | {"time_local":"02/Aug/2024:16:27:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1744","request_time":"2.101","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"f20306b665bb0eb293bd5a0643beb0f2"} experiment-1 | {"level":"info","message":"DELETE /experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca 204 161ms","method":"DELETE","requestID":"a0a758812063500a3895facb9ab62f0d","responseTime":161,"status":204,"url":"/experiments/ee6eeafd-a74c-47bb-8cd5-a80bbfb299ca"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 124ms","method":"POST","requestID":"b1536b921a46144a4b493a8b3fda9963","responseTime":124,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27:09 +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.129","http_referrer":"","http_user_agent":"node-fetch","requestID":"b1536b921a46144a4b493a8b3fda9963"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 125ms","method":"POST","requestID":"60265484b085aaabd9dc92096b3853dc","responseTime":125,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOX0.VO_Ac23Y_5fxS-rbhBvoEV7YQluSdxH4bWqjFDXK7Os","level":"info","message":"auth send jwt","requestID":"2fb13106872abb48d406779ddd7187e5"} gateway-1 | {"time_local":"02/Aug/2024:16:27:09 +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":"60265484b085aaabd9dc92096b3853dc"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2fb13106872abb48d406779ddd7187e5","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2fb13106872abb48d406779ddd7187e5"} gateway-1 | {"time_local":"02/Aug/2024:16:27:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2069","request_time":"0.675","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":"5e86216445310eddf9f1e432c31cad4e"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1509,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1509,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.061366,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"2fb13106872abb48d406779ddd7187e5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616029,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOX0.VO_Ac23Y_5fxS-rbhBvoEV7YQluSdxH4bWqjFDXK7Os"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2fb13106872abb48d406779ddd7187e5","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/4054ba0e-6b22-4350-85e5-fad49e23c797' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ce15111-ca78-4757-bbfc-7bae33d75623","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"002aa7d7-e6dc-462d-b0ae-632ab404d3f4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.5438578} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2fb13106872abb48d406779ddd7187e5","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bcbf3caf-c5e1-4ddb-9cbb-a92bb78b3f49","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.5485806} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/47acef53-0645-4b7b-8ad6-d1af7f336cd6' closed"} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2fb13106872abb48d406779ddd7187e5","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ce15111-ca78-4757-bbfc-7bae33d75623","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"01d35400-ec58-4826-b759-baa15f42e504","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.5587149} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dd2836e4-108e-4808-8a4e-9f689d9ff24c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.5590837} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"2fb13106872abb48d406779ddd7187e5","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ce15111-ca78-4757-bbfc-7bae33d75623","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ce15111-ca78-4757-bbfc-7bae33d75623","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:09.558326676Z"}]},"request_id":"d167d8e6-a90c-43b3-a189-d2204e57fdae","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.562985} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2fb13106872abb48d406779ddd7187e5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2fb13106872abb48d406779ddd7187e5"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"2fb13106872abb48d406779ddd7187e5","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2fb13106872abb48d406779ddd7187e5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOX0.VO_Ac23Y_5fxS-rbhBvoEV7YQluSdxH4bWqjFDXK7Os","level":"info","message":"auth send jwt","requestID":"e73b7c06c3f75b505922553c98c3b839"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e73b7c06c3f75b505922553c98c3b839","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e73b7c06c3f75b505922553c98c3b839"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1510,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1510,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.687207,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e73b7c06c3f75b505922553c98c3b839","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616029,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAyOX0.VO_Ac23Y_5fxS-rbhBvoEV7YQluSdxH4bWqjFDXK7Os"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"e73b7c06c3f75b505922553c98c3b839","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f879d22-b69a-4b36-a5e9-9c8f95711bb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"caadc3fc-caba-48b5-802c-d075df74a456","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.5930083} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e73b7c06c3f75b505922553c98c3b839","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ed26c242-64bc-470b-8145-5f16509ec145","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.597516} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e73b7c06c3f75b505922553c98c3b839","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f879d22-b69a-4b36-a5e9-9c8f95711bb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"6e4b142d-6092-4ff1-9c3a-aa6f87af62be","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.6084185} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f66a4749-49d6-4f73-9c36-68ae58a70854","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.6086583} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"e73b7c06c3f75b505922553c98c3b839","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f879d22-b69a-4b36-a5e9-9c8f95711bb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f879d22-b69a-4b36-a5e9-9c8f95711bb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:09.608385423Z"}]},"request_id":"a3e56fe6-b295-480f-8546-7a6e2da1ac79","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616029.6125379} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e73b7c06c3f75b505922553c98c3b839","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e73b7c06c3f75b505922553c98c3b839"} gateway-1 | {"time_local":"02/Aug/2024:16:27:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e73b7c06c3f75b505922553c98c3b839"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"e73b7c06c3f75b505922553c98c3b839","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMH0.qz15EdGKDrikxzFcBBDK866CqNmZDTmLsccBmyhF33s","level":"info","message":"auth send jwt","requestID":"d4fa2521c25a00e6eaca8a18eb698cb0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d4fa2521c25a00e6eaca8a18eb698cb0","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d4fa2521c25a00e6eaca8a18eb698cb0"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1511,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:10Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1511,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.078833,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d4fa2521c25a00e6eaca8a18eb698cb0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616030,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMH0.qz15EdGKDrikxzFcBBDK866CqNmZDTmLsccBmyhF33s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d4fa2521c25a00e6eaca8a18eb698cb0","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ce15111-ca78-4757-bbfc-7bae33d75623","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ce15111-ca78-4757-bbfc-7bae33d75623","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:09.558326676Z"}]},"request_id":"05f2c54e-605f-4cbc-a427-09567f64eaa0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616030.1275492} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d4fa2521c25a00e6eaca8a18eb698cb0","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"853a885f-a5a7-45fe-8d32-1a93ae0e4341","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616030.13259} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d4fa2521c25a00e6eaca8a18eb698cb0","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ce15111-ca78-4757-bbfc-7bae33d75623","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ce15111-ca78-4757-bbfc-7bae33d75623","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:09.558326676Z"}]},"request_id":"45e781d7-c2f8-41ce-9bb1-6934236df481","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616030.1451464} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d4fa2521c25a00e6eaca8a18eb698cb0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d4fa2521c25a00e6eaca8a18eb698cb0"} device-1 | {"level":"info","message":"PATCH /devices/3ce15111-ca78-4757-bbfc-7bae33d75623 200 31ms","method":"PATCH","requestID":"d4fa2521c25a00e6eaca8a18eb698cb0","responseTime":31,"status":200,"url":"/devices/3ce15111-ca78-4757-bbfc-7bae33d75623"} gateway-1 | {"time_local":"02/Aug/2024:16:27:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3ce15111-ca78-4757-bbfc-7bae33d75623 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.035","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"d4fa2521c25a00e6eaca8a18eb698cb0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMH0.qz15EdGKDrikxzFcBBDK866CqNmZDTmLsccBmyhF33s","level":"info","message":"auth send jwt","requestID":"a3bcc1b80a2a79317632fc39db708453"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a3bcc1b80a2a79317632fc39db708453","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a3bcc1b80a2a79317632fc39db708453"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1512,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:10Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1512,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.279193,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a3bcc1b80a2a79317632fc39db708453","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616030,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMH0.qz15EdGKDrikxzFcBBDK866CqNmZDTmLsccBmyhF33s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a3bcc1b80a2a79317632fc39db708453","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a3bcc1b80a2a79317632fc39db708453"} gateway-1 | {"time_local":"02/Aug/2024:16:27:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3ce15111-ca78-4757-bbfc-7bae33d75623/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"a3bcc1b80a2a79317632fc39db708453"} device-1 | {"level":"info","message":"POST /devices/3ce15111-ca78-4757-bbfc-7bae33d75623/websocket 200 21ms","method":"POST","requestID":"a3bcc1b80a2a79317632fc39db708453","responseTime":21,"status":200,"url":"/devices/3ce15111-ca78-4757-bbfc-7bae33d75623/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a557f091bde0376bfe96d6f0e1f66564","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":"a557f091bde0376bfe96d6f0e1f66564","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:27:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3/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":"a557f091bde0376bfe96d6f0e1f66564"} device-1 | {"level":"info","message":"OPTIONS /devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3/websocket 200 1ms","method":"OPTIONS","requestID":"a557f091bde0376bfe96d6f0e1f66564","responseTime":1,"status":200,"url":"/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMX0.8_CasvAsPAAg-wKs7n2ZKIYyfjhjBWIxXEZ9Yrdrvm8","level":"info","message":"auth send jwt","requestID":"4592e3b3605c78a661284d985690a6e3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4592e3b3605c78a661284d985690a6e3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4592e3b3605c78a661284d985690a6e3"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1513,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:11Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1513,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.432501,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"4592e3b3605c78a661284d985690a6e3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616031,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMX0.8_CasvAsPAAg-wKs7n2ZKIYyfjhjBWIxXEZ9Yrdrvm8"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"4592e3b3605c78a661284d985690a6e3","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4592e3b3605c78a661284d985690a6e3"} device-1 | {"level":"info","message":"POST /devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3/websocket 200 23ms","method":"POST","requestID":"4592e3b3605c78a661284d985690a6e3","responseTime":23,"status":200,"url":"/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:27:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3/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":"4592e3b3605c78a661284d985690a6e3"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f571d878f2676838c39c9e99c8b07b1f","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":"f571d878f2676838c39c9e99c8b07b1f","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:27:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"f571d878f2676838c39c9e99c8b07b1f"} device-1 | {"level":"info","message":"OPTIONS /devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3? 200 1ms","method":"OPTIONS","requestID":"f571d878f2676838c39c9e99c8b07b1f","responseTime":1,"status":200,"url":"/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMX0.8_CasvAsPAAg-wKs7n2ZKIYyfjhjBWIxXEZ9Yrdrvm8","level":"info","message":"auth send jwt","requestID":"c0f432657d30f5a2ab345dfc2f06615c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c0f432657d30f5a2ab345dfc2f06615c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c0f432657d30f5a2ab345dfc2f06615c"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1514,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:11Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1514,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.266349,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c0f432657d30f5a2ab345dfc2f06615c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616031,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMX0.8_CasvAsPAAg-wKs7n2ZKIYyfjhjBWIxXEZ9Yrdrvm8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c0f432657d30f5a2ab345dfc2f06615c","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f879d22-b69a-4b36-a5e9-9c8f95711bb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f879d22-b69a-4b36-a5e9-9c8f95711bb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:09.608385423Z"}]},"request_id":"2cd79294-c0a6-41ab-b995-c1e3f2006805","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616031.7503293} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c0f432657d30f5a2ab345dfc2f06615c","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1cd2fd50-b503-45c9-82df-097cbe8eea6c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616031.7578716} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c0f432657d30f5a2ab345dfc2f06615c","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f879d22-b69a-4b36-a5e9-9c8f95711bb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f879d22-b69a-4b36-a5e9-9c8f95711bb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:09.608385423Z"}]},"request_id":"d1e04423-fc61-4c45-90e6-5dd19c5ee79f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616031.771015} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c0f432657d30f5a2ab345dfc2f06615c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c0f432657d30f5a2ab345dfc2f06615c"} device-1 | {"level":"info","message":"PATCH /devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3? 200 37ms","method":"PATCH","requestID":"c0f432657d30f5a2ab345dfc2f06615c","responseTime":37,"status":200,"url":"/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.043","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":"c0f432657d30f5a2ab345dfc2f06615c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMX0.8_CasvAsPAAg-wKs7n2ZKIYyfjhjBWIxXEZ9Yrdrvm8","level":"info","message":"auth send jwt","requestID":"d6a23936ec28b86e940f84408d4046a8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d6a23936ec28b86e940f84408d4046a8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d6a23936ec28b86e940f84408d4046a8"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1515,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:11Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1515,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.108548,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d6a23936ec28b86e940f84408d4046a8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616031,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMX0.8_CasvAsPAAg-wKs7n2ZKIYyfjhjBWIxXEZ9Yrdrvm8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d6a23936ec28b86e940f84408d4046a8","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ce15111-ca78-4757-bbfc-7bae33d75623","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ce15111-ca78-4757-bbfc-7bae33d75623","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:09.558326676Z"}]},"request_id":"7936f025-a899-4af6-8a7d-41591a5b602c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616031.7952752} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d6a23936ec28b86e940f84408d4046a8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d6a23936ec28b86e940f84408d4046a8"} device-1 | {"level":"info","message":"GET /devices/3ce15111-ca78-4757-bbfc-7bae33d75623? 200 14ms","method":"GET","requestID":"d6a23936ec28b86e940f84408d4046a8","responseTime":14,"status":200,"url":"/devices/3ce15111-ca78-4757-bbfc-7bae33d75623?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3ce15111-ca78-4757-bbfc-7bae33d75623? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d6a23936ec28b86e940f84408d4046a8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMX0.8_CasvAsPAAg-wKs7n2ZKIYyfjhjBWIxXEZ9Yrdrvm8","level":"info","message":"auth send jwt","requestID":"22cc824b0bf101c042c36f821d0c6119"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"22cc824b0bf101c042c36f821d0c6119","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"22cc824b0bf101c042c36f821d0c6119"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1516,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:11Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1516,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.915448,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"22cc824b0bf101c042c36f821d0c6119","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616031,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMX0.8_CasvAsPAAg-wKs7n2ZKIYyfjhjBWIxXEZ9Yrdrvm8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"22cc824b0bf101c042c36f821d0c6119","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f879d22-b69a-4b36-a5e9-9c8f95711bb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f879d22-b69a-4b36-a5e9-9c8f95711bb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:09.608385423Z"}]},"request_id":"51154252-77f0-4cd1-b73b-e0a914f4265e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616031.8138173} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"22cc824b0bf101c042c36f821d0c6119","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"22cc824b0bf101c042c36f821d0c6119"} gateway-1 | {"time_local":"02/Aug/2024:16:27:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"22cc824b0bf101c042c36f821d0c6119"} device-1 | {"level":"info","message":"GET /devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3? 200 13ms","method":"GET","requestID":"22cc824b0bf101c042c36f821d0c6119","responseTime":13,"status":200,"url":"/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMX0.8_CasvAsPAAg-wKs7n2ZKIYyfjhjBWIxXEZ9Yrdrvm8","level":"info","message":"auth send jwt","requestID":"7b683d852bccb7308e422f9499116408"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7b683d852bccb7308e422f9499116408","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"7b683d852bccb7308e422f9499116408"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1517,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:11Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1517,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.130974,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"7b683d852bccb7308e422f9499116408","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616031,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMX0.8_CasvAsPAAg-wKs7n2ZKIYyfjhjBWIxXEZ9Yrdrvm8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7b683d852bccb7308e422f9499116408","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad"},"level":"info","message":"Attempting to run experiment","requestID":"7b683d852bccb7308e422f9499116408"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad"},"level":"info","message":"Attempting to book experiment","requestID":"7b683d852bccb7308e422f9499116408"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad"},"level":"info","message":"Successfully booked experiment","requestID":"7b683d852bccb7308e422f9499116408"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1224a4b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1224f2d0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1518,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:11Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1518,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.106496,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:11Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1519,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1224a4b0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616031,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMX0.8_CasvAsPAAg-wKs7n2ZKIYyfjhjBWIxXEZ9Yrdrvm8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1224a4b0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1519,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.834672,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1224f2d0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616031,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMX0.8_CasvAsPAAg-wKs7n2ZKIYyfjhjBWIxXEZ9Yrdrvm8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1224f2d0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ce15111-ca78-4757-bbfc-7bae33d75623","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ce15111-ca78-4757-bbfc-7bae33d75623","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:09.558326676Z"}]},"request_id":"4c1b0efe-6605-426b-960f-527fbbbce0a4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616031.8786097} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1224a4b0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f879d22-b69a-4b36-a5e9-9c8f95711bb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f879d22-b69a-4b36-a5e9-9c8f95711bb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:09.608385423Z"}]},"request_id":"14894f10-ee00-4f30-8048-fc26c6d9157b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616031.8802392} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1224f2d0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1224a4b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/3ce15111-ca78-4757-bbfc-7bae33d75623? 200 22ms","method":"GET","requestID":"1224a4b0-50ec-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/3ce15111-ca78-4757-bbfc-7bae33d75623?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1224f2d0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3? 200 22ms","method":"GET","requestID":"1224f2d0-50ec-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad"},"level":"info","message":"Setting up experiment","requestID":"7b683d852bccb7308e422f9499116408"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"7b683d852bccb7308e422f9499116408"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad"},"level":"info","message":"Successfully locked booking for experiment","requestID":"7b683d852bccb7308e422f9499116408"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"7b683d852bccb7308e422f9499116408"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"7b683d852bccb7308e422f9499116408"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad"},"level":"info","message":"Attempting to update booking for experiment","requestID":"7b683d852bccb7308e422f9499116408"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad"},"level":"info","message":"Successfully updated booking for experiment","requestID":"7b683d852bccb7308e422f9499116408"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad"},"level":"info","message":"Successfully set up experiment","requestID":"7b683d852bccb7308e422f9499116408"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"122e8fc0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"122edde0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"122f2c00-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1520,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:11Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad"},"level":"info","message":"Successfully running experiment","requestID":"7b683d852bccb7308e422f9499116408"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1520,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.337223,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:11Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1521,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"122e8fc0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616031,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMX0.8_CasvAsPAAg-wKs7n2ZKIYyfjhjBWIxXEZ9Yrdrvm8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"122e8fc0-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1521,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.424191,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:11Z"} authorization-1 | {"client_addr":"127.0.0.1:55962","level":"info","msg":"Received request.","req_id":1522,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"122edde0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616031,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMX0.8_CasvAsPAAg-wKs7n2ZKIYyfjhjBWIxXEZ9Yrdrvm8"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"122edde0-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55962","level":"info","msg":"Sent response.","req_id":1522,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.800092,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:11Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ce15111-ca78-4757-bbfc-7bae33d75623","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1259701d-75c9-4c83-ba9a-250226d2c0c5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616031.9453564} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"122f2c00-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623","object_type":"device","rebac_allow":false,"scope_allow":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":"122f2c00-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ce15111-ca78-4757-bbfc-7bae33d75623","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ce15111-ca78-4757-bbfc-7bae33d75623","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:09.558326676Z"}]},"request_id":"d8a67c2e-2817-4254-8a28-5bff00c596e2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616031.9493346} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"122e8fc0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f879d22-b69a-4b36-a5e9-9c8f95711bb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f879d22-b69a-4b36-a5e9-9c8f95711bb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:09.608385423Z"}]},"request_id":"1edee084-4933-48e9-af58-ffe17f759fa9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616031.9533637} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"122edde0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"122f2c00-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/3ce15111-ca78-4757-bbfc-7bae33d75623/signaling 200 21ms","method":"POST","requestID":"122f2c00-50ec-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/devices/3ce15111-ca78-4757-bbfc-7bae33d75623/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1232fc90-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"122e8fc0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/3ce15111-ca78-4757-bbfc-7bae33d75623? 200 34ms","method":"GET","requestID":"122e8fc0-50ec-11ef-8434-2f6d198c7397","responseTime":34,"status":200,"url":"/devices/3ce15111-ca78-4757-bbfc-7bae33d75623?"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcf041701-a63c-4f4c-9d71-13cd8081a8ad#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcf041701-a63c-4f4c-9d71-13cd8081a8ad","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"274cd899-ab75-44f3-8ed1-a9674e45f052","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616031.9654555} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"122edde0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"03aeb4f2-4acd-4ffe-be72-99b05631dc4a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616031.9658113} device-1 | {"level":"info","message":"GET /devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3? 200 34ms","method":"GET","requestID":"122edde0-50ec-11ef-8434-2f6d198c7397","responseTime":34,"status":200,"url":"/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"7b683d852bccb7308e422f9499116408","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1523,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:11Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f879d22-b69a-4b36-a5e9-9c8f95711bb3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d2665dd2-e380-4758-8a62-0c3a0c34716e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616031.9702902} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1523,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.678642,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:11Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12348330-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1232fc90-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3","object_type":"device","rebac_allow":false,"scope_allow":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":"1232fc90-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1524,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:11Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1232fc90-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3/signaling 200 16ms","method":"POST","requestID":"1232fc90-50ec-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ce15111-ca78-4757-bbfc-7bae33d75623","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"68689253-048c-4738-b1b0-6660f70855e4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616031.979594} experiment-1 | {"data":{"experiment":"http://localhost/experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"7b683d852bccb7308e422f9499116408"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1524,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.192899,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:11Z"} gateway-1 | {"time_local":"02/Aug/2024:16:27:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.162","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7b683d852bccb7308e422f9499116408"} experiment-1 | {"level":"info","message":"POST /experiments? 201 156ms","method":"POST","requestID":"7b683d852bccb7308e422f9499116408","responseTime":156,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"12348330-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623","object_type":"device","rebac_allow":false,"scope_allow":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":"12348330-50ec-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12348330-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/3ce15111-ca78-4757-bbfc-7bae33d75623/signaling 200 15ms","method":"POST","requestID":"12348330-50ec-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/3ce15111-ca78-4757-bbfc-7bae33d75623/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMX0.8_CasvAsPAAg-wKs7n2ZKIYyfjhjBWIxXEZ9Yrdrvm8","level":"info","message":"auth send jwt","requestID":"0558b275a57d446f8b22dfbd47c8ca5a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0558b275a57d446f8b22dfbd47c8ca5a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12374250-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0558b275a57d446f8b22dfbd47c8ca5a"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1525,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:11Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1526,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:11Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f879d22-b69a-4b36-a5e9-9c8f95711bb3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c0bbf31f-7f3b-4692-864e-4ca3a7a22620","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616031.9948838} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1526,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.275044,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0558b275a57d446f8b22dfbd47c8ca5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616031,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMX0.8_CasvAsPAAg-wKs7n2ZKIYyfjhjBWIxXEZ9Yrdrvm8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0558b275a57d446f8b22dfbd47c8ca5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1525,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.872788,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"12374250-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3","object_type":"device","rebac_allow":false,"scope_allow":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":"12374250-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12374250-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ce15111-ca78-4757-bbfc-7bae33d75623","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ce15111-ca78-4757-bbfc-7bae33d75623","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:09.558326676Z"}]},"request_id":"d3a746c3-2ac0-473b-a84b-ffa16abe3bc4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.0004382} device-1 | {"level":"info","message":"POST /devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3/signaling 200 12ms","method":"POST","requestID":"12374250-50ec-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0558b275a57d446f8b22dfbd47c8ca5a","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"7b683d852bccb7308e422f9499116408"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"12398c40-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1239b350-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1527,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1528,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:12Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0558b275a57d446f8b22dfbd47c8ca5a"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1527,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.154577,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:12Z"} gateway-1 | {"time_local":"02/Aug/2024:16:27:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3ce15111-ca78-4757-bbfc-7bae33d75623? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0558b275a57d446f8b22dfbd47c8ca5a"} device-1 | {"level":"info","message":"GET /devices/3ce15111-ca78-4757-bbfc-7bae33d75623? 200 17ms","method":"GET","requestID":"0558b275a57d446f8b22dfbd47c8ca5a","responseTime":17,"status":200,"url":"/devices/3ce15111-ca78-4757-bbfc-7bae33d75623?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"12398c40-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616031,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMX0.8_CasvAsPAAg-wKs7n2ZKIYyfjhjBWIxXEZ9Yrdrvm8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"12398c40-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1528,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.84901,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1239b350-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616031,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMX0.8_CasvAsPAAg-wKs7n2ZKIYyfjhjBWIxXEZ9Yrdrvm8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1239b350-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMn0._jTe_c42Zq0lkwNFAJELNMEG2xbRY8EtMpKGoN9Irnk","level":"info","message":"auth send jwt","requestID":"a6580375d27591ffda9a44ecc7816401"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a6580375d27591ffda9a44ecc7816401","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ce15111-ca78-4757-bbfc-7bae33d75623","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ce15111-ca78-4757-bbfc-7bae33d75623","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:09.558326676Z"}]},"request_id":"993b5b1f-ce46-4e47-a671-4ca76e5ec082","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.0129814} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a6580375d27591ffda9a44ecc7816401"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"12398c40-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f879d22-b69a-4b36-a5e9-9c8f95711bb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f879d22-b69a-4b36-a5e9-9c8f95711bb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:09.608385423Z"}]},"request_id":"3d023dc3-9944-47b7-ab5c-51600d59c29c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.0149808} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1239b350-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1529,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1529,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.073485,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a6580375d27591ffda9a44ecc7816401","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616032,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMn0._jTe_c42Zq0lkwNFAJELNMEG2xbRY8EtMpKGoN9Irnk"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"12398c40-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a6580375d27591ffda9a44ecc7816401","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/3ce15111-ca78-4757-bbfc-7bae33d75623? 200 17ms","method":"GET","requestID":"12398c40-50ec-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/3ce15111-ca78-4757-bbfc-7bae33d75623?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1239b350-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3? 200 17ms","method":"GET","requestID":"1239b350-50ec-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad"},"level":"info","message":"Building connection plan","requestID":"7b683d852bccb7308e422f9499116408"} 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":"acb86aa9-f164-4135-b98b-092b0bc66965"},{"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":"9c52a5ce-945b-4a33-83c1-65802f03c1f7"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"73a9a062-d761-4202-942a-907bdeaf89f2"}]},"level":"info","message":"Built pairwise service configurations","requestID":"7b683d852bccb7308e422f9499116408"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"123cc090-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"123cc090-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"POST /rooms 201 2ms","method":"POST","requestID":"123cc090-50ec-11ef-a432-47ab85bb6d58","responseTime":2,"status":201,"url":"/rooms"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f879d22-b69a-4b36-a5e9-9c8f95711bb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f879d22-b69a-4b36-a5e9-9c8f95711bb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:09.608385423Z"}]},"request_id":"f365e7ac-fcad-40aa-88c1-910436f3c167","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.0277038} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/1fda7bde-b923-428b-b077-face2ea9a6cd?id=26ade60c-fe63-4033-be63-b089ba657211","ws://localhost/rooms/1fda7bde-b923-428b-b077-face2ea9a6cd?id=d908c7d8-dc34-40c5-ac87-3c14e4672aef"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"7b683d852bccb7308e422f9499116408"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a6580375d27591ffda9a44ecc7816401","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"123daaf0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a6580375d27591ffda9a44ecc7816401"} device-1 | {"level":"info","message":"GET /devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3? 200 19ms","method":"GET","requestID":"a6580375d27591ffda9a44ecc7816401","responseTime":19,"status":200,"url":"/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a6580375d27591ffda9a44ecc7816401"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1530,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1530,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.1206,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"123daaf0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616031,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMX0.8_CasvAsPAAg-wKs7n2ZKIYyfjhjBWIxXEZ9Yrdrvm8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"123daaf0-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"a3777280-2cc2-4df5-aabb-824ea6124feb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.0428436} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b660bdde-d505-43a6-b895-9180919b269e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.0431836} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"123daaf0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"123daaf0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"123daaf0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/969e0357-d924-4822-9808-c90957759671'","requestID":"123daaf0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/969e0357-d924-4822-9808-c90957759671'","requestID":"123daaf0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"123daaf0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"123daaf0-50ec-11ef-8434-2f6d198c7397","responseTime":25,"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":"123daaf0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/969e0357-d924-4822-9808-c90957759671' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"969e0357-d924-4822-9808-c90957759671","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"12430220-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"26ade60c-fe63-4033-be63-b089ba657211\" in room \"http://localhost/rooms/1fda7bde-b923-428b-b077-face2ea9a6cd\"","requestID":"12430220-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"12430220-50ec-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"07d63c68edfb6d8883f6ad15f7690d2e","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":"07d63c68edfb6d8883f6ad15f7690d2e","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","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/969e0357-d924-4822-9808-c90957759671"}}},"level":"info","message":"received a callback","requestID":"07d63c68edfb6d8883f6ad15f7690d2e"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"12437750-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d908c7d8-dc34-40c5-ac87-3c14e4672aef\" in room \"http://localhost/rooms/1fda7bde-b923-428b-b077-face2ea9a6cd\"","requestID":"12437750-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"12437750-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d908c7d8-dc34-40c5-ac87-3c14e4672aef\" in room \"http://localhost/rooms/1fda7bde-b923-428b-b077-face2ea9a6cd\"","requestID":"12437750-50ec-11ef-a432-47ab85bb6d58"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"07d63c68edfb6d8883f6ad15f7690d2e","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27:12 +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":"07d63c68edfb6d8883f6ad15f7690d2e"} device-1 | {"data":{"peerconnection":"969e0357-d924-4822-9808-c90957759671","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"7b683d852bccb7308e422f9499116408"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1246f9c0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1531,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:12Z"} device-1 | {"data":{"peerconnection":"969e0357-d924-4822-9808-c90957759671","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ce15111-ca78-4757-bbfc-7bae33d75623","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1bcc2a75-ebe4-442a-b5cd-e0772faaa318","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.0968165} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1531,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.21985,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1246f9c0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623","object_type":"device","rebac_allow":false,"scope_allow":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":"1246f9c0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/969e0357-d924-4822-9808-c90957759671' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"969e0357-d924-4822-9808-c90957759671","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1246f9c0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/3ce15111-ca78-4757-bbfc-7bae33d75623/signaling 200 16ms","method":"POST","requestID":"1246f9c0-50ec-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/3ce15111-ca78-4757-bbfc-7bae33d75623/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ef72adc556af593e1faeddb90faaa730","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":"ef72adc556af593e1faeddb90faaa730","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1249b8e0-50ec-11ef-8434-2f6d198c7397"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/969e0357-d924-4822-9808-c90957759671"}}},"level":"info","message":"received a callback","requestID":"ef72adc556af593e1faeddb90faaa730"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1532,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f879d22-b69a-4b36-a5e9-9c8f95711bb3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"58f55e4b-6ca5-4cb5-8ada-5975dca3e4bd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.114675} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1532,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.228989,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:12Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"124a7c30-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1249b8e0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3","object_type":"device","rebac_allow":false,"scope_allow":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":"1249b8e0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1533,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F969e0357-d924-4822-9808-c90957759671","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eee1956c-52e6-498e-9b13-597555215582","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.1196666} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1249b8e0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3/signaling 200 10ms","method":"POST","requestID":"1249b8e0-50ec-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1533,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.334655,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/969e0357-d924-4822-9808-c90957759671","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"124a7c30-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/969e0357-d924-4822-9808-c90957759671","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":"124a7c30-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"124a7c30-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/969e0357-d924-4822-9808-c90957759671 200 8ms","method":"GET","requestID":"124a7c30-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/peerconnections/969e0357-d924-4822-9808-c90957759671"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 26ms","method":"POST","requestID":"ef72adc556af593e1faeddb90faaa730","responseTime":26,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27:12 +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.030","http_referrer":"","http_user_agent":"node-fetch","requestID":"ef72adc556af593e1faeddb90faaa730"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"124dd790-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1534,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ce15111-ca78-4757-bbfc-7bae33d75623","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e2a77f14-896c-45ef-8989-41b23b27dd25","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.1426117} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1534,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.559267,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"124dd790-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623","object_type":"device","rebac_allow":false,"scope_allow":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":"124dd790-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"124dd790-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/3ce15111-ca78-4757-bbfc-7bae33d75623/signaling 200 10ms","method":"POST","requestID":"124dd790-50ec-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/3ce15111-ca78-4757-bbfc-7bae33d75623/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"124fac50-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1535,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f879d22-b69a-4b36-a5e9-9c8f95711bb3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"51e4837b-0679-4a35-a178-68f412374263","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.1544566} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1535,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.808243,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"124fac50-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3","object_type":"device","rebac_allow":false,"scope_allow":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":"124fac50-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"124fac50-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3/signaling 200 10ms","method":"POST","requestID":"124fac50-50ec-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMn0._jTe_c42Zq0lkwNFAJELNMEG2xbRY8EtMpKGoN9Irnk","level":"info","message":"auth send jwt","requestID":"c2c34fa5372d0f37b5003f46ecdc9ffb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c2c34fa5372d0f37b5003f46ecdc9ffb","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad","requestID":"c2c34fa5372d0f37b5003f46ecdc9ffb"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1536,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1536,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.852202,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c2c34fa5372d0f37b5003f46ecdc9ffb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616032,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMn0._jTe_c42Zq0lkwNFAJELNMEG2xbRY8EtMpKGoN9Irnk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c2c34fa5372d0f37b5003f46ecdc9ffb","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad","requestID":"c2c34fa5372d0f37b5003f46ecdc9ffb"} gateway-1 | {"time_local":"02/Aug/2024:16:27:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c2c34fa5372d0f37b5003f46ecdc9ffb"} experiment-1 | {"level":"info","message":"GET /experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad 200 13ms","method":"GET","requestID":"c2c34fa5372d0f37b5003f46ecdc9ffb","responseTime":13,"status":200,"url":"/experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMn0._jTe_c42Zq0lkwNFAJELNMEG2xbRY8EtMpKGoN9Irnk","level":"info","message":"auth send jwt","requestID":"6e6335a72c1203dfbb5b5b8d7e49f8e7"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6e6335a72c1203dfbb5b5b8d7e49f8e7","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad","requestID":"6e6335a72c1203dfbb5b5b8d7e49f8e7"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1537,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1537,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.759953,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"6e6335a72c1203dfbb5b5b8d7e49f8e7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616032,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMn0._jTe_c42Zq0lkwNFAJELNMEG2xbRY8EtMpKGoN9Irnk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6e6335a72c1203dfbb5b5b8d7e49f8e7","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad"},"level":"info","message":"Attempting to finish experiment","requestID":"6e6335a72c1203dfbb5b5b8d7e49f8e7"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"125885f0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1538,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1538,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.881464,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/969e0357-d924-4822-9808-c90957759671","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"125885f0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/969e0357-d924-4822-9808-c90957759671","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616032,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMn0._jTe_c42Zq0lkwNFAJELNMEG2xbRY8EtMpKGoN9Irnk"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"125885f0-50ec-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:27:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/1fda7bde-b923-428b-b077-face2ea9a6cd?id=26ade60c-fe63-4033-be63-b089ba657211 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.158","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"d32b6136ec6c09343724bec22131bec0"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"26ade60c-fe63-4033-be63-b089ba657211\" in room \"http://localhost/rooms/1fda7bde-b923-428b-b077-face2ea9a6cd\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"26ade60c-fe63-4033-be63-b089ba657211\" from room \"http://localhost/rooms/1fda7bde-b923-428b-b077-face2ea9a6cd\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/969e0357-d924-4822-9808-c90957759671","device":"1f879d22-b69a-4b36-a5e9-9c8f95711bb3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"02/Aug/2024:16:27:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/1fda7bde-b923-428b-b077-face2ea9a6cd?id=d908c7d8-dc34-40c5-ac87-3c14e4672aef HTTP/1.1","status": "101","body_bytes_sent":"460","request_time":"0.156","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":"07fca8909f09fc2f8804037701673999"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"d908c7d8-dc34-40c5-ac87-3c14e4672aef\" in room \"http://localhost/rooms/1fda7bde-b923-428b-b077-face2ea9a6cd\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"d908c7d8-dc34-40c5-ac87-3c14e4672aef\" from room \"http://localhost/rooms/1fda7bde-b923-428b-b077-face2ea9a6cd\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/969e0357-d924-4822-9808-c90957759671' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/969e0357-d924-4822-9808-c90957759671' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"969e0357-d924-4822-9808-c90957759671","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a2d1520aba15281773b7d0560e3d64a8","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":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F969e0357-d924-4822-9808-c90957759671': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F969e0357-d924-4822-9808-c90957759671","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"0cb1d5b4-61dd-4ee8-9a3d-9d07e987ddcf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.2277553} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a2d1520aba15281773b7d0560e3d64a8","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cc64fbfa-5639-43bf-917e-6cf20ea7cf90","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.2281516} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/969e0357-d924-4822-9808-c90957759671"}}},"level":"info","message":"received a callback","requestID":"a2d1520aba15281773b7d0560e3d64a8"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"125885f0-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ae1c7032821dbde9c2c725b0a8ba8137","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":"ae1c7032821dbde9c2c725b0a8ba8137","responseTime":1,"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/969e0357-d924-4822-9808-c90957759671"}}},"level":"info","message":"received a callback","requestID":"ae1c7032821dbde9c2c725b0a8ba8137"} device-1 | {"data":{"peerconnection":"969e0357-d924-4822-9808-c90957759671","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"125885f0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/969e0357-d924-4822-9808-c90957759671 204 40ms","method":"DELETE","requestID":"125885f0-50ec-11ef-8434-2f6d198c7397","responseTime":40,"status":204,"url":"/peerconnections/969e0357-d924-4822-9808-c90957759671"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad"},"level":"info","message":"Successfully finished experiment","requestID":"6e6335a72c1203dfbb5b5b8d7e49f8e7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1261d4c0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1539,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ce15111-ca78-4757-bbfc-7bae33d75623","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5b6a4485-63ef-449a-aa29-156ac0b1e99f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.2742734} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1539,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.82892,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1261d4c0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623","object_type":"device","rebac_allow":false,"scope_allow":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":"1261d4c0-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1261d4c0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcf041701-a63c-4f4c-9d71-13cd8081a8ad': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcf041701-a63c-4f4c-9d71-13cd8081a8ad","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"1f1ddf1e-9b08-4e84-80d2-5bda7d4fa435","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.2804203} device-1 | {"level":"info","message":"POST /devices/3ce15111-ca78-4757-bbfc-7bae33d75623/signaling 200 12ms","method":"POST","requestID":"1261d4c0-50ec-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/3ce15111-ca78-4757-bbfc-7bae33d75623/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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3d762700-18c7-488c-a80a-ddfe128c9181","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.280714} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"6e6335a72c1203dfbb5b5b8d7e49f8e7","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12641eb0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1540,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1f879d22-b69a-4b36-a5e9-9c8f95711bb3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6685c079-836f-4760-bb04-bdc88a4f973d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.2901132} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1540,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.890691,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"12641eb0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3","object_type":"device","rebac_allow":false,"scope_allow":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":"12641eb0-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12641eb0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3/signaling 200 14ms","method":"POST","requestID":"12641eb0-50ec-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad","requestID":"6e6335a72c1203dfbb5b5b8d7e49f8e7"} gateway-1 | {"time_local":"02/Aug/2024:16:27:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.159","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6e6335a72c1203dfbb5b5b8d7e49f8e7"} gateway-1 | {"time_local":"02/Aug/2024:16:27:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1746","request_time":"2.175","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"f33ab30592f177a897461e7a600cf898"} experiment-1 | {"level":"info","message":"DELETE /experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad 204 158ms","method":"DELETE","requestID":"6e6335a72c1203dfbb5b5b8d7e49f8e7","responseTime":158,"status":204,"url":"/experiments/cf041701-a63c-4f4c-9d71-13cd8081a8ad"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMn0._jTe_c42Zq0lkwNFAJELNMEG2xbRY8EtMpKGoN9Irnk","level":"info","message":"auth send jwt","requestID":"a4e266e2e42dee0face862084c49c209"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"a2d1520aba15281773b7d0560e3d64a8","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27:12 +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":"a2d1520aba15281773b7d0560e3d64a8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a4e266e2e42dee0face862084c49c209","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"ae1c7032821dbde9c2c725b0a8ba8137","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27:12 +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.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"ae1c7032821dbde9c2c725b0a8ba8137"} device-1 | {"level":"info","message":"postDevices called","requestID":"a4e266e2e42dee0face862084c49c209"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1541,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1541,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.017568,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a4e266e2e42dee0face862084c49c209","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616032,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMn0._jTe_c42Zq0lkwNFAJELNMEG2xbRY8EtMpKGoN9Irnk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a4e266e2e42dee0face862084c49c209","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:27:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2067","request_time":"0.678","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":"b3ccbeac3bedcd552b0b8a1b1540e6fd"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/3ce15111-ca78-4757-bbfc-7bae33d75623' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa89b2b2d-c627-4715-9246-d49be662c92d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8e9fbcec-2191-4699-aa67-e2269bc64953","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.3816988} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a4e266e2e42dee0face862084c49c209","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e0599eab-1c00-42cc-9c89-0ad9e46a0d8a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.3862827} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/1f879d22-b69a-4b36-a5e9-9c8f95711bb3' closed"} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"a4e266e2e42dee0face862084c49c209","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa89b2b2d-c627-4715-9246-d49be662c92d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"00e855ad-98eb-4309-9975-ef3fc4c9d702","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.3963425} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1073bd22-33ea-4f95-a4d2-1f8f3ec797c7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.3964615} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"a4e266e2e42dee0face862084c49c209","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa89b2b2d-c627-4715-9246-d49be662c92d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa89b2b2d-c627-4715-9246-d49be662c92d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:12.396297187Z"}]},"request_id":"6245fab4-6301-4644-a2ea-57b7dcdc43e0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.400934} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a4e266e2e42dee0face862084c49c209","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a4e266e2e42dee0face862084c49c209"} gateway-1 | {"time_local":"02/Aug/2024:16:27:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a4e266e2e42dee0face862084c49c209"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"a4e266e2e42dee0face862084c49c209","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMn0._jTe_c42Zq0lkwNFAJELNMEG2xbRY8EtMpKGoN9Irnk","level":"info","message":"auth send jwt","requestID":"6b9a98dbcf71c323b2aed7d04459f122"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6b9a98dbcf71c323b2aed7d04459f122","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6b9a98dbcf71c323b2aed7d04459f122"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1542,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1542,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.703081,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"6b9a98dbcf71c323b2aed7d04459f122","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616032,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMn0._jTe_c42Zq0lkwNFAJELNMEG2xbRY8EtMpKGoN9Irnk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6b9a98dbcf71c323b2aed7d04459f122","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F350fab0f-76a6-4eaf-8f3a-6392b9681ff0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c9bcdad6-db77-4cf6-a632-cac267b76353","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.429387} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6b9a98dbcf71c323b2aed7d04459f122","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2b9e7e62-dcb8-4e98-a180-5cd0f2cf7242","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.4352627} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"6b9a98dbcf71c323b2aed7d04459f122","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F350fab0f-76a6-4eaf-8f3a-6392b9681ff0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"bfbfe36e-263f-4595-b1b9-b62afc62b82b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.446192} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"208d5495-590d-4882-a7c9-818d388a3eb5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.4463584} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"6b9a98dbcf71c323b2aed7d04459f122","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F350fab0f-76a6-4eaf-8f3a-6392b9681ff0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F350fab0f-76a6-4eaf-8f3a-6392b9681ff0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:12.446159776Z"}]},"request_id":"991d51d6-1ca0-48b8-a332-d3ac14167f71","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.449961} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6b9a98dbcf71c323b2aed7d04459f122","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6b9a98dbcf71c323b2aed7d04459f122"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"6b9a98dbcf71c323b2aed7d04459f122","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6b9a98dbcf71c323b2aed7d04459f122"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMn0._jTe_c42Zq0lkwNFAJELNMEG2xbRY8EtMpKGoN9Irnk","level":"info","message":"auth send jwt","requestID":"fa862ab3a7a6e29fd24789260db953d9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fa862ab3a7a6e29fd24789260db953d9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"fa862ab3a7a6e29fd24789260db953d9"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1543,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1543,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.693188,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fa862ab3a7a6e29fd24789260db953d9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616032,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMn0._jTe_c42Zq0lkwNFAJELNMEG2xbRY8EtMpKGoN9Irnk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fa862ab3a7a6e29fd24789260db953d9","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa89b2b2d-c627-4715-9246-d49be662c92d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa89b2b2d-c627-4715-9246-d49be662c92d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:12.396297187Z"}]},"request_id":"2d379458-c67a-4051-bcd3-d75ba977a7d3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.9669297} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"fa862ab3a7a6e29fd24789260db953d9","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"44ec5e9a-af60-4202-a4af-91fecfe0cf2c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.9723678} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"fa862ab3a7a6e29fd24789260db953d9","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa89b2b2d-c627-4715-9246-d49be662c92d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa89b2b2d-c627-4715-9246-d49be662c92d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:12.396297187Z"}]},"request_id":"47ab6228-32b3-4ea2-be7c-ef610524f03b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616032.9843442} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fa862ab3a7a6e29fd24789260db953d9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"fa862ab3a7a6e29fd24789260db953d9"} gateway-1 | {"time_local":"02/Aug/2024:16:27:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a89b2b2d-c627-4715-9246-d49be662c92d HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.036","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"fa862ab3a7a6e29fd24789260db953d9"} device-1 | {"level":"info","message":"PATCH /devices/a89b2b2d-c627-4715-9246-d49be662c92d 200 31ms","method":"PATCH","requestID":"fa862ab3a7a6e29fd24789260db953d9","responseTime":31,"status":200,"url":"/devices/a89b2b2d-c627-4715-9246-d49be662c92d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMn0._jTe_c42Zq0lkwNFAJELNMEG2xbRY8EtMpKGoN9Irnk","level":"info","message":"auth send jwt","requestID":"646ca272dd61ef2764dfe0cd6d0070e8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"646ca272dd61ef2764dfe0cd6d0070e8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"646ca272dd61ef2764dfe0cd6d0070e8"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1544,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1544,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.208912,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"646ca272dd61ef2764dfe0cd6d0070e8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616032,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzMn0._jTe_c42Zq0lkwNFAJELNMEG2xbRY8EtMpKGoN9Irnk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"646ca272dd61ef2764dfe0cd6d0070e8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"646ca272dd61ef2764dfe0cd6d0070e8"} gateway-1 | {"time_local":"02/Aug/2024:16:27:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a89b2b2d-c627-4715-9246-d49be662c92d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"646ca272dd61ef2764dfe0cd6d0070e8"} device-1 | {"level":"info","message":"POST /devices/a89b2b2d-c627-4715-9246-d49be662c92d/websocket 200 20ms","method":"POST","requestID":"646ca272dd61ef2764dfe0cd6d0070e8","responseTime":20,"status":200,"url":"/devices/a89b2b2d-c627-4715-9246-d49be662c92d/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"aa612f0030e696c26fed2dd87e6288a7","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":"aa612f0030e696c26fed2dd87e6288a7","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:27:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0/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":"aa612f0030e696c26fed2dd87e6288a7"} device-1 | {"level":"info","message":"OPTIONS /devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0/websocket 200 1ms","method":"OPTIONS","requestID":"aa612f0030e696c26fed2dd87e6288a7","responseTime":1,"status":200,"url":"/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNH0.rFOWCaOVuoOuogwzJFDWjYLwrCaVbG6_23rpFn_F22E","level":"info","message":"auth send jwt","requestID":"baeb22491db9be3b6adf4b697a10d796"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"baeb22491db9be3b6adf4b697a10d796","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"baeb22491db9be3b6adf4b697a10d796"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1545,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1545,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.279803,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"baeb22491db9be3b6adf4b697a10d796","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616034,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNH0.rFOWCaOVuoOuogwzJFDWjYLwrCaVbG6_23rpFn_F22E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"baeb22491db9be3b6adf4b697a10d796","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"baeb22491db9be3b6adf4b697a10d796"} gateway-1 | {"time_local":"02/Aug/2024:16:27:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0/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":"baeb22491db9be3b6adf4b697a10d796"} device-1 | {"level":"info","message":"POST /devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0/websocket 200 22ms","method":"POST","requestID":"baeb22491db9be3b6adf4b697a10d796","responseTime":22,"status":200,"url":"/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"20388b7f5b544516ff1ddde987f5c86e","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":"20388b7f5b544516ff1ddde987f5c86e","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:27:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"20388b7f5b544516ff1ddde987f5c86e"} device-1 | {"level":"info","message":"OPTIONS /devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0? 200 1ms","method":"OPTIONS","requestID":"20388b7f5b544516ff1ddde987f5c86e","responseTime":1,"status":200,"url":"/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNH0.rFOWCaOVuoOuogwzJFDWjYLwrCaVbG6_23rpFn_F22E","level":"info","message":"auth send jwt","requestID":"badc35736cf16f23490303c0a3c5d2c2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"badc35736cf16f23490303c0a3c5d2c2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"badc35736cf16f23490303c0a3c5d2c2"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1546,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1546,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.329647,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"badc35736cf16f23490303c0a3c5d2c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616034,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNH0.rFOWCaOVuoOuogwzJFDWjYLwrCaVbG6_23rpFn_F22E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"badc35736cf16f23490303c0a3c5d2c2","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F350fab0f-76a6-4eaf-8f3a-6392b9681ff0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F350fab0f-76a6-4eaf-8f3a-6392b9681ff0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:12.446159776Z"}]},"request_id":"961debaa-b723-4c31-843d-2bb389a03b99","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.5601137} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"badc35736cf16f23490303c0a3c5d2c2","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ff289714-3fea-4968-a460-899260bcd44f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.5669706} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"badc35736cf16f23490303c0a3c5d2c2","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F350fab0f-76a6-4eaf-8f3a-6392b9681ff0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F350fab0f-76a6-4eaf-8f3a-6392b9681ff0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:12.446159776Z"}]},"request_id":"a6c4d316-ddff-4034-a115-dccb31944e73","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.5793211} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"badc35736cf16f23490303c0a3c5d2c2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"badc35736cf16f23490303c0a3c5d2c2"} device-1 | {"level":"info","message":"PATCH /devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0? 200 35ms","method":"PATCH","requestID":"badc35736cf16f23490303c0a3c5d2c2","responseTime":35,"status":200,"url":"/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.041","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":"badc35736cf16f23490303c0a3c5d2c2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNH0.rFOWCaOVuoOuogwzJFDWjYLwrCaVbG6_23rpFn_F22E","level":"info","message":"auth send jwt","requestID":"8882ba191556e7ca192e7eedb4aeff9f"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"8882ba191556e7ca192e7eedb4aeff9f","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8882ba191556e7ca192e7eedb4aeff9f"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1547,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1547,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.307592,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"8882ba191556e7ca192e7eedb4aeff9f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616034,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNH0.rFOWCaOVuoOuogwzJFDWjYLwrCaVbG6_23rpFn_F22E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8882ba191556e7ca192e7eedb4aeff9f","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa89b2b2d-c627-4715-9246-d49be662c92d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa89b2b2d-c627-4715-9246-d49be662c92d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:12.396297187Z"}]},"request_id":"69cd16b8-b1f9-45d2-9ca9-b005d80c9af2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.609925} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"8882ba191556e7ca192e7eedb4aeff9f","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8882ba191556e7ca192e7eedb4aeff9f"} gateway-1 | {"time_local":"02/Aug/2024:16:27:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a89b2b2d-c627-4715-9246-d49be662c92d? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8882ba191556e7ca192e7eedb4aeff9f"} device-1 | {"level":"info","message":"GET /devices/a89b2b2d-c627-4715-9246-d49be662c92d? 200 18ms","method":"GET","requestID":"8882ba191556e7ca192e7eedb4aeff9f","responseTime":18,"status":200,"url":"/devices/a89b2b2d-c627-4715-9246-d49be662c92d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNH0.rFOWCaOVuoOuogwzJFDWjYLwrCaVbG6_23rpFn_F22E","level":"info","message":"auth send jwt","requestID":"327aad241210049ea716f3b1d2a9f17e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"327aad241210049ea716f3b1d2a9f17e","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"327aad241210049ea716f3b1d2a9f17e"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1548,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1548,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.521257,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"327aad241210049ea716f3b1d2a9f17e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616034,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNH0.rFOWCaOVuoOuogwzJFDWjYLwrCaVbG6_23rpFn_F22E"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"327aad241210049ea716f3b1d2a9f17e","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F350fab0f-76a6-4eaf-8f3a-6392b9681ff0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F350fab0f-76a6-4eaf-8f3a-6392b9681ff0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:12.446159776Z"}]},"request_id":"6ad150a2-8ba3-42f5-b97a-7c0d43bcc4be","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.6378665} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"327aad241210049ea716f3b1d2a9f17e","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"327aad241210049ea716f3b1d2a9f17e"} gateway-1 | {"time_local":"02/Aug/2024:16:27:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"327aad241210049ea716f3b1d2a9f17e"} device-1 | {"level":"info","message":"GET /devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0? 200 22ms","method":"GET","requestID":"327aad241210049ea716f3b1d2a9f17e","responseTime":22,"status":200,"url":"/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNH0.rFOWCaOVuoOuogwzJFDWjYLwrCaVbG6_23rpFn_F22E","level":"info","message":"auth send jwt","requestID":"a87ea85859fd23d05a744d3b10712ee7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a87ea85859fd23d05a744d3b10712ee7","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"a87ea85859fd23d05a744d3b10712ee7"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1549,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1549,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.428821,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a87ea85859fd23d05a744d3b10712ee7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616034,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNH0.rFOWCaOVuoOuogwzJFDWjYLwrCaVbG6_23rpFn_F22E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a87ea85859fd23d05a744d3b10712ee7","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e886a36-70aa-40be-8c58-aebac8ba786a"},"level":"info","message":"Attempting to run experiment","requestID":"a87ea85859fd23d05a744d3b10712ee7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e886a36-70aa-40be-8c58-aebac8ba786a"},"level":"info","message":"Attempting to book experiment","requestID":"a87ea85859fd23d05a744d3b10712ee7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e886a36-70aa-40be-8c58-aebac8ba786a"},"level":"info","message":"Successfully booked experiment","requestID":"a87ea85859fd23d05a744d3b10712ee7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"13d3b440-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"13d40260-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1550,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1550,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.650214,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"13d3b440-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616034,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNH0.rFOWCaOVuoOuogwzJFDWjYLwrCaVbG6_23rpFn_F22E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"13d3b440-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1551,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1551,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.996084,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"13d40260-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616034,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNH0.rFOWCaOVuoOuogwzJFDWjYLwrCaVbG6_23rpFn_F22E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"13d40260-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa89b2b2d-c627-4715-9246-d49be662c92d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa89b2b2d-c627-4715-9246-d49be662c92d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:12.396297187Z"}]},"request_id":"db26a6d8-ed94-4ded-8ab8-96f5b1aab715","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.7026684} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"13d3b440-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F350fab0f-76a6-4eaf-8f3a-6392b9681ff0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F350fab0f-76a6-4eaf-8f3a-6392b9681ff0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:12.446159776Z"}]},"request_id":"dca111ce-cf21-4d91-a772-d0f272644825","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.704877} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"13d40260-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"13d3b440-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/a89b2b2d-c627-4715-9246-d49be662c92d? 200 20ms","method":"GET","requestID":"13d3b440-50ec-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/a89b2b2d-c627-4715-9246-d49be662c92d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"13d40260-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0? 200 19ms","method":"GET","requestID":"13d40260-50ec-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e886a36-70aa-40be-8c58-aebac8ba786a"},"level":"info","message":"Setting up experiment","requestID":"a87ea85859fd23d05a744d3b10712ee7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e886a36-70aa-40be-8c58-aebac8ba786a"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"a87ea85859fd23d05a744d3b10712ee7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e886a36-70aa-40be-8c58-aebac8ba786a"},"level":"info","message":"Successfully locked booking for experiment","requestID":"a87ea85859fd23d05a744d3b10712ee7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e886a36-70aa-40be-8c58-aebac8ba786a"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"a87ea85859fd23d05a744d3b10712ee7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e886a36-70aa-40be-8c58-aebac8ba786a"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"a87ea85859fd23d05a744d3b10712ee7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e886a36-70aa-40be-8c58-aebac8ba786a"},"level":"info","message":"Attempting to update booking for experiment","requestID":"a87ea85859fd23d05a744d3b10712ee7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e886a36-70aa-40be-8c58-aebac8ba786a"},"level":"info","message":"Successfully updated booking for experiment","requestID":"a87ea85859fd23d05a744d3b10712ee7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e886a36-70aa-40be-8c58-aebac8ba786a"},"level":"info","message":"Successfully set up experiment","requestID":"a87ea85859fd23d05a744d3b10712ee7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"13de3b90-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"13de89b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"13ded7d0-50ec-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e886a36-70aa-40be-8c58-aebac8ba786a"},"level":"info","message":"Successfully running experiment","requestID":"a87ea85859fd23d05a744d3b10712ee7"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1552,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1553,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1552,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.77052,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"13de3b90-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616034,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNH0.rFOWCaOVuoOuogwzJFDWjYLwrCaVbG6_23rpFn_F22E"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"13de3b90-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1553,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.464931,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"13de89b0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616034,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNH0.rFOWCaOVuoOuogwzJFDWjYLwrCaVbG6_23rpFn_F22E"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"13de89b0-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1554,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1554,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.608528,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa89b2b2d-c627-4715-9246-d49be662c92d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"943f0003-d416-4b4a-96ce-1d8962431ea3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.7743483} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"13ded7d0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d","object_type":"device","rebac_allow":false,"scope_allow":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":"13ded7d0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa89b2b2d-c627-4715-9246-d49be662c92d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa89b2b2d-c627-4715-9246-d49be662c92d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:12.396297187Z"}]},"request_id":"73878142-228f-4de5-98c5-e8c06f260ec5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.777221} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"13de3b90-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F350fab0f-76a6-4eaf-8f3a-6392b9681ff0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F350fab0f-76a6-4eaf-8f3a-6392b9681ff0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:12.446159776Z"}]},"request_id":"480a1f04-a0b3-4cbf-a1de-ec0aade6606d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.7808127} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"13de89b0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"13ded7d0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/a89b2b2d-c627-4715-9246-d49be662c92d/signaling 200 19ms","method":"POST","requestID":"13ded7d0-50ec-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/a89b2b2d-c627-4715-9246-d49be662c92d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"13e25a40-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"13de3b90-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/a89b2b2d-c627-4715-9246-d49be662c92d? 200 30ms","method":"GET","requestID":"13de3b90-50ec-11ef-8434-2f6d198c7397","responseTime":30,"status":200,"url":"/devices/a89b2b2d-c627-4715-9246-d49be662c92d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"13de89b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0? 200 30ms","method":"GET","requestID":"13de89b0-50ec-11ef-8434-2f6d198c7397","responseTime":30,"status":200,"url":"/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0?"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5e886a36-70aa-40be-8c58-aebac8ba786a#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5e886a36-70aa-40be-8c58-aebac8ba786a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"61bf8a79-a373-4b98-9848-0a94111e7978","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.793408} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"46601447-2356-4ac5-bdbc-baa16f71fbfe","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.7939756} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"13e392c0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"a87ea85859fd23d05a744d3b10712ee7","responseTime":27,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1555,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F350fab0f-76a6-4eaf-8f3a-6392b9681ff0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a8e12da6-4494-4c7e-b5ce-c61261fe2908","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.7985332} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1555,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.562159,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1556,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"13e25a40-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0","object_type":"device","rebac_allow":false,"scope_allow":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":"13e25a40-50ec-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa89b2b2d-c627-4715-9246-d49be662c92d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f167c70d-f3af-4fd9-b845-88101f6b94f4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.8067067} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1556,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.784599,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:14Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/5e886a36-70aa-40be-8c58-aebac8ba786a","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"a87ea85859fd23d05a744d3b10712ee7"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"13e392c0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d","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":"13e25a40-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"13e392c0-50ec-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0/signaling 200 22ms","method":"POST","requestID":"13e25a40-50ec-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0/signaling"} gateway-1 | {"time_local":"02/Aug/2024:16:27:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.164","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a87ea85859fd23d05a744d3b10712ee7"} experiment-1 | {"level":"info","message":"POST /experiments? 201 157ms","method":"POST","requestID":"a87ea85859fd23d05a744d3b10712ee7","responseTime":157,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"13e392c0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/a89b2b2d-c627-4715-9246-d49be662c92d/signaling 200 18ms","method":"POST","requestID":"13e392c0-50ec-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/a89b2b2d-c627-4715-9246-d49be662c92d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"13e6c710-50ec-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNH0.rFOWCaOVuoOuogwzJFDWjYLwrCaVbG6_23rpFn_F22E","level":"info","message":"auth send jwt","requestID":"341d8fed50b5efd09e59a2dd946435ed"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"341d8fed50b5efd09e59a2dd946435ed","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"341d8fed50b5efd09e59a2dd946435ed"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1557,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1558,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1558,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.30482,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"341d8fed50b5efd09e59a2dd946435ed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616034,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNH0.rFOWCaOVuoOuogwzJFDWjYLwrCaVbG6_23rpFn_F22E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"341d8fed50b5efd09e59a2dd946435ed","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F350fab0f-76a6-4eaf-8f3a-6392b9681ff0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6b31134a-6dd7-4dec-be5b-d70ad1e5d8be","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.8248112} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1557,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.352825,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"13e6c710-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0","object_type":"device","rebac_allow":false,"scope_allow":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":"13e6c710-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa89b2b2d-c627-4715-9246-d49be662c92d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa89b2b2d-c627-4715-9246-d49be662c92d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:12.396297187Z"}]},"request_id":"645e7095-3a4f-409e-a2d1-4833f56683d4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.8292847} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"341d8fed50b5efd09e59a2dd946435ed","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"13e6c710-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0/signaling 200 16ms","method":"POST","requestID":"13e6c710-50ec-11ef-8434-2f6d198c7397","responseTime":16,"status":200,"url":"/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e886a36-70aa-40be-8c58-aebac8ba786a"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"a87ea85859fd23d05a744d3b10712ee7"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"341d8fed50b5efd09e59a2dd946435ed"} device-1 | {"level":"info","message":"GET /devices/a89b2b2d-c627-4715-9246-d49be662c92d? 200 16ms","method":"GET","requestID":"341d8fed50b5efd09e59a2dd946435ed","responseTime":16,"status":200,"url":"/devices/a89b2b2d-c627-4715-9246-d49be662c92d?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a89b2b2d-c627-4715-9246-d49be662c92d? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"341d8fed50b5efd09e59a2dd946435ed"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"13e9ad40-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"13e9fb60-50ec-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNH0.rFOWCaOVuoOuogwzJFDWjYLwrCaVbG6_23rpFn_F22E","level":"info","message":"auth send jwt","requestID":"4105784ae0ad0d2db22ea9a6a92e82e9"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1559,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:14Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4105784ae0ad0d2db22ea9a6a92e82e9","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1559,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.226589,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1560,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:14Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4105784ae0ad0d2db22ea9a6a92e82e9"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"13e9ad40-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616034,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNH0.rFOWCaOVuoOuogwzJFDWjYLwrCaVbG6_23rpFn_F22E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"13e9ad40-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1560,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.051123,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"13e9fb60-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616034,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNH0.rFOWCaOVuoOuogwzJFDWjYLwrCaVbG6_23rpFn_F22E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"13e9fb60-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1561,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1561,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.142367,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"4105784ae0ad0d2db22ea9a6a92e82e9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616034,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNH0.rFOWCaOVuoOuogwzJFDWjYLwrCaVbG6_23rpFn_F22E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4105784ae0ad0d2db22ea9a6a92e82e9","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa89b2b2d-c627-4715-9246-d49be662c92d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa89b2b2d-c627-4715-9246-d49be662c92d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:12.396297187Z"}]},"request_id":"21bbe0e5-d74a-48bf-ae2f-bca2803c35b0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.8477533} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F350fab0f-76a6-4eaf-8f3a-6392b9681ff0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F350fab0f-76a6-4eaf-8f3a-6392b9681ff0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:12.446159776Z"}]},"request_id":"2aca5b56-b774-44dc-a974-957d76550438","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.8491154} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"13e9ad40-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"13e9fb60-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F350fab0f-76a6-4eaf-8f3a-6392b9681ff0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F350fab0f-76a6-4eaf-8f3a-6392b9681ff0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:12.446159776Z"}]},"request_id":"1f6b59c7-e596-4c81-b9f3-09ad96ab3352","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.8537483} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4105784ae0ad0d2db22ea9a6a92e82e9","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"13e9ad40-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/a89b2b2d-c627-4715-9246-d49be662c92d? 200 20ms","method":"GET","requestID":"13e9ad40-50ec-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/a89b2b2d-c627-4715-9246-d49be662c92d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"13e9fb60-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0? 200 19ms","method":"GET","requestID":"13e9fb60-50ec-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e886a36-70aa-40be-8c58-aebac8ba786a"},"level":"info","message":"Building connection plan","requestID":"a87ea85859fd23d05a744d3b10712ee7"} 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":"84f4a678-4e79-4159-842a-346ccddf82ef"},{"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":"a6de1a13-29fe-4b92-be6d-35a163cd38b4"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"44bfae48-7c2d-4d56-b8cf-361871c0d957"}]},"level":"info","message":"Built pairwise service configurations","requestID":"a87ea85859fd23d05a744d3b10712ee7"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4105784ae0ad0d2db22ea9a6a92e82e9"} gateway-1 | {"time_local":"02/Aug/2024:16:27:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4105784ae0ad0d2db22ea9a6a92e82e9"} device-1 | {"level":"info","message":"GET /devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0? 200 17ms","method":"GET","requestID":"4105784ae0ad0d2db22ea9a6a92e82e9","responseTime":17,"status":200,"url":"/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0?"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"13ed56c0-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"13ed56c0-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"13ed56c0-50ec-11ef-a432-47ab85bb6d58","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/d016fade-86f3-4b90-8586-73bb096f196f?id=eb0b989e-e670-408a-87ae-483661c9cfd2","ws://localhost/rooms/d016fade-86f3-4b90-8586-73bb096f196f?id=463237e4-e1be-49eb-b194-1e2bcc657ba5"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"a87ea85859fd23d05a744d3b10712ee7"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"13edf300-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1562,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1562,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.980547,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"13edf300-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616034,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNH0.rFOWCaOVuoOuogwzJFDWjYLwrCaVbG6_23rpFn_F22E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"13edf300-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"baee19ad-64fb-49a8-b7d9-64d64d61ff25","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.8772895} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"100c1cee-2d86-469b-8714-3222610562e6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.8775392} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"13edf300-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"13edf300-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"13edf300-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/e57fe947-281a-4cbd-9723-0727c73de64b'","requestID":"13edf300-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/e57fe947-281a-4cbd-9723-0727c73de64b'","requestID":"13edf300-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"13edf300-50ec-11ef-8434-2f6d198c7397"} 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":"13edf300-50ec-11ef-8434-2f6d198c7397","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":"13edf300-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/e57fe947-281a-4cbd-9723-0727c73de64b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e57fe947-281a-4cbd-9723-0727c73de64b","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"13f3e670-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"463237e4-e1be-49eb-b194-1e2bcc657ba5\" in room \"http://localhost/rooms/d016fade-86f3-4b90-8586-73bb096f196f\"","requestID":"13f3e670-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"13f3e670-50ec-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9b7974387484154580ca4a9a429fceca","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)"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"13f43490-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"eb0b989e-e670-408a-87ae-483661c9cfd2\" in room \"http://localhost/rooms/d016fade-86f3-4b90-8586-73bb096f196f\"","requestID":"13f43490-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"13f43490-50ec-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9b7974387484154580ca4a9a429fceca","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"eb0b989e-e670-408a-87ae-483661c9cfd2\" in room \"http://localhost/rooms/d016fade-86f3-4b90-8586-73bb096f196f\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"eb0b989e-e670-408a-87ae-483661c9cfd2\" in room \"http://localhost/rooms/d016fade-86f3-4b90-8586-73bb096f196f\""} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/e57fe947-281a-4cbd-9723-0727c73de64b"}}},"level":"info","message":"received a callback","requestID":"9b7974387484154580ca4a9a429fceca"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"eb0b989e-e670-408a-87ae-483661c9cfd2\" in room \"http://localhost/rooms/d016fade-86f3-4b90-8586-73bb096f196f\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"eb0b989e-e670-408a-87ae-483661c9cfd2\" in room \"http://localhost/rooms/d016fade-86f3-4b90-8586-73bb096f196f\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"eb0b989e-e670-408a-87ae-483661c9cfd2\" in room \"http://localhost/rooms/d016fade-86f3-4b90-8586-73bb096f196f\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"eb0b989e-e670-408a-87ae-483661c9cfd2\" in room \"http://localhost/rooms/d016fade-86f3-4b90-8586-73bb096f196f\""} device-1 | {"data":{"peerconnection":"e57fe947-281a-4cbd-9723-0727c73de64b","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 12ms","method":"POST","requestID":"9b7974387484154580ca4a9a429fceca","responseTime":12,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27: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.016","http_referrer":"","http_user_agent":"node-fetch","requestID":"9b7974387484154580ca4a9a429fceca"} device-1 | {"data":{"peerconnection":"e57fe947-281a-4cbd-9723-0727c73de64b","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e886a36-70aa-40be-8c58-aebac8ba786a"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"a87ea85859fd23d05a744d3b10712ee7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"13f98bc0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/e57fe947-281a-4cbd-9723-0727c73de64b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e57fe947-281a-4cbd-9723-0727c73de64b","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1563,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:14Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"257ec43dddf18385046ceceb3cca8162","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":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa89b2b2d-c627-4715-9246-d49be662c92d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"edc35305-9e63-4207-9842-75db035293ed","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.9440384} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"257ec43dddf18385046ceceb3cca8162","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1563,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.625542,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"13f98bc0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d","object_type":"device","rebac_allow":false,"scope_allow":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":"13f98bc0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/e57fe947-281a-4cbd-9723-0727c73de64b"}}},"level":"info","message":"received a callback","requestID":"257ec43dddf18385046ceceb3cca8162"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"13fb1260-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1564,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:14Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"13f98bc0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/a89b2b2d-c627-4715-9246-d49be662c92d/signaling 200 14ms","method":"POST","requestID":"13f98bc0-50ec-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/a89b2b2d-c627-4715-9246-d49be662c92d/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe57fe947-281a-4cbd-9723-0727c73de64b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9191aa03-f543-402f-a59b-16285f387884","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.9552772} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1564,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.987571,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e57fe947-281a-4cbd-9723-0727c73de64b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"13fb1260-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/e57fe947-281a-4cbd-9723-0727c73de64b","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":"13fb1260-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"13fbfcc0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1565,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:14Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"13fb1260-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/e57fe947-281a-4cbd-9723-0727c73de64b 200 9ms","method":"GET","requestID":"13fb1260-50ec-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/peerconnections/e57fe947-281a-4cbd-9723-0727c73de64b"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F350fab0f-76a6-4eaf-8f3a-6392b9681ff0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6eb47589-7093-47b9-8802-7f3bddef0d9d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.9601855} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1565,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.283507,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"13fbfcc0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0","object_type":"device","rebac_allow":false,"scope_allow":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":"13fbfcc0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"13fbfcc0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0/signaling 200 7ms","method":"POST","requestID":"13fbfcc0-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"257ec43dddf18385046ceceb3cca8162","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27: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.030","http_referrer":"","http_user_agent":"node-fetch","requestID":"257ec43dddf18385046ceceb3cca8162"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"13fe94d0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1566,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F350fab0f-76a6-4eaf-8f3a-6392b9681ff0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"78489533-0ea9-4bc3-98c3-67fb9eb3c46e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.9772518} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1566,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.36646,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"13fe94d0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0","object_type":"device","rebac_allow":false,"scope_allow":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":"13fe94d0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"13fe94d0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0/signaling 200 7ms","method":"POST","requestID":"13fe94d0-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"13fff460-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1567,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa89b2b2d-c627-4715-9246-d49be662c92d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"684abd28-4380-484e-8185-b4f1f7274aa1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616034.9863925} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1567,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.450751,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"13fff460-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d","object_type":"device","rebac_allow":false,"scope_allow":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":"13fff460-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"13fff460-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/a89b2b2d-c627-4715-9246-d49be662c92d/signaling 200 7ms","method":"POST","requestID":"13fff460-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/devices/a89b2b2d-c627-4715-9246-d49be662c92d/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA","level":"info","message":"auth send jwt","requestID":"40c59181e101ee1cf3d4678740f47296"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"40c59181e101ee1cf3d4678740f47296","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/5e886a36-70aa-40be-8c58-aebac8ba786a","requestID":"40c59181e101ee1cf3d4678740f47296"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1568,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1568,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.14553,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5e886a36-70aa-40be-8c58-aebac8ba786a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"40c59181e101ee1cf3d4678740f47296","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/5e886a36-70aa-40be-8c58-aebac8ba786a","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616035,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"40c59181e101ee1cf3d4678740f47296","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/5e886a36-70aa-40be-8c58-aebac8ba786a","requestID":"40c59181e101ee1cf3d4678740f47296"} gateway-1 | {"time_local":"02/Aug/2024:16:27:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/5e886a36-70aa-40be-8c58-aebac8ba786a HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"40c59181e101ee1cf3d4678740f47296"} experiment-1 | {"level":"info","message":"GET /experiments/5e886a36-70aa-40be-8c58-aebac8ba786a 200 15ms","method":"GET","requestID":"40c59181e101ee1cf3d4678740f47296","responseTime":15,"status":200,"url":"/experiments/5e886a36-70aa-40be-8c58-aebac8ba786a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA","level":"info","message":"auth send jwt","requestID":"b3bee5aae0bad43c5b5626112219233d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b3bee5aae0bad43c5b5626112219233d","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/5e886a36-70aa-40be-8c58-aebac8ba786a","requestID":"b3bee5aae0bad43c5b5626112219233d"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1569,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1569,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.208135,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5e886a36-70aa-40be-8c58-aebac8ba786a","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"b3bee5aae0bad43c5b5626112219233d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/5e886a36-70aa-40be-8c58-aebac8ba786a","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616035,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b3bee5aae0bad43c5b5626112219233d","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e886a36-70aa-40be-8c58-aebac8ba786a"},"level":"info","message":"Attempting to finish experiment","requestID":"b3bee5aae0bad43c5b5626112219233d"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"140ac9d0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1570,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1570,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.188602,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e57fe947-281a-4cbd-9723-0727c73de64b","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"140ac9d0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/e57fe947-281a-4cbd-9723-0727c73de64b","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616035,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"140ac9d0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:27:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/d016fade-86f3-4b90-8586-73bb096f196f?id=463237e4-e1be-49eb-b194-1e2bcc657ba5 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.167","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"dd931c462910a67c0eb1758f9ad7d79b"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"463237e4-e1be-49eb-b194-1e2bcc657ba5\" in room \"http://localhost/rooms/d016fade-86f3-4b90-8586-73bb096f196f\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"463237e4-e1be-49eb-b194-1e2bcc657ba5\" from room \"http://localhost/rooms/d016fade-86f3-4b90-8586-73bb096f196f\""} gateway-1 | {"time_local":"02/Aug/2024:16:27:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/d016fade-86f3-4b90-8586-73bb096f196f?id=eb0b989e-e670-408a-87ae-483661c9cfd2 HTTP/1.1","status": "101","body_bytes_sent":"918","request_time":"0.167","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":"97337ba4d375513a96b9c06e55e97cd5"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/e57fe947-281a-4cbd-9723-0727c73de64b","device":"350fab0f-76a6-4eaf-8f3a-6392b9681ff0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"eb0b989e-e670-408a-87ae-483661c9cfd2\" in room \"http://localhost/rooms/d016fade-86f3-4b90-8586-73bb096f196f\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"eb0b989e-e670-408a-87ae-483661c9cfd2\" from room \"http://localhost/rooms/d016fade-86f3-4b90-8586-73bb096f196f\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/e57fe947-281a-4cbd-9723-0727c73de64b' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/e57fe947-281a-4cbd-9723-0727c73de64b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e57fe947-281a-4cbd-9723-0727c73de64b","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe57fe947-281a-4cbd-9723-0727c73de64b': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe57fe947-281a-4cbd-9723-0727c73de64b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"127d3a50-f9ca-4f56-90b3-f2ebb6fc0df8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.076743} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a5a2fb40d13ecdf54c7c06aea1c1a87d","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":"a5a2fb40d13ecdf54c7c06aea1c1a87d","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b87d3670-d048-404f-a532-f42f574f68ea","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.0777137} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"055144cc89e59573e273633b687eba62","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":"055144cc89e59573e273633b687eba62","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/e57fe947-281a-4cbd-9723-0727c73de64b"}}},"level":"info","message":"received a callback","requestID":"a5a2fb40d13ecdf54c7c06aea1c1a87d"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"140ac9d0-50ec-11ef-8434-2f6d198c7397","responseTime":12,"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/e57fe947-281a-4cbd-9723-0727c73de64b"}}},"level":"info","message":"received a callback","requestID":"055144cc89e59573e273633b687eba62"} device-1 | {"data":{"peerconnection":"e57fe947-281a-4cbd-9723-0727c73de64b","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"140ac9d0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/e57fe947-281a-4cbd-9723-0727c73de64b 204 48ms","method":"DELETE","requestID":"140ac9d0-50ec-11ef-8434-2f6d198c7397","responseTime":48,"status":204,"url":"/peerconnections/e57fe947-281a-4cbd-9723-0727c73de64b"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e886a36-70aa-40be-8c58-aebac8ba786a"},"level":"info","message":"Successfully finished experiment","requestID":"b3bee5aae0bad43c5b5626112219233d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"141466c0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1571,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F350fab0f-76a6-4eaf-8f3a-6392b9681ff0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"95731abe-b6cb-4179-b185-3b913234cdd5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.1229885} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1571,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.950085,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"141466c0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0","object_type":"device","rebac_allow":false,"scope_allow":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":"141466c0-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"141466c0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0/signaling 200 12ms","method":"POST","requestID":"141466c0-50ec-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5e886a36-70aa-40be-8c58-aebac8ba786a': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5e886a36-70aa-40be-8c58-aebac8ba786a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"f5364614-87cb-49ae-9264-252e20f553b3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.1313128} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1416d7c0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7d9dd697-499f-4c67-9c00-a52aea64890f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.131644} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"b3bee5aae0bad43c5b5626112219233d","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1572,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa89b2b2d-c627-4715-9246-d49be662c92d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ae7df555-5856-4467-b141-37a438edef37","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.1382627} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1572,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.068896,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1416d7c0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a89b2b2d-c627-4715-9246-d49be662c92d","object_type":"device","rebac_allow":false,"scope_allow":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":"1416d7c0-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1416d7c0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/a89b2b2d-c627-4715-9246-d49be662c92d/signaling 200 12ms","method":"POST","requestID":"1416d7c0-50ec-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/a89b2b2d-c627-4715-9246-d49be662c92d/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/5e886a36-70aa-40be-8c58-aebac8ba786a","requestID":"b3bee5aae0bad43c5b5626112219233d"} gateway-1 | {"time_local":"02/Aug/2024:16:27:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/5e886a36-70aa-40be-8c58-aebac8ba786a HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.163","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b3bee5aae0bad43c5b5626112219233d"} experiment-1 | {"level":"info","message":"DELETE /experiments/5e886a36-70aa-40be-8c58-aebac8ba786a 204 160ms","method":"DELETE","requestID":"b3bee5aae0bad43c5b5626112219233d","responseTime":160,"status":204,"url":"/experiments/5e886a36-70aa-40be-8c58-aebac8ba786a"} gateway-1 | {"time_local":"02/Aug/2024:16:27:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1745","request_time":"2.184","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"9790c16b96fb5481d7c4d6ca5561fbea"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"a5a2fb40d13ecdf54c7c06aea1c1a87d","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27:15 +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":"a5a2fb40d13ecdf54c7c06aea1c1a87d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"055144cc89e59573e273633b687eba62","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27:15 +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":"055144cc89e59573e273633b687eba62"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA","level":"info","message":"auth send jwt","requestID":"f2e0edf440d90b0e42ab8440f3d1df96"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f2e0edf440d90b0e42ab8440f3d1df96","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f2e0edf440d90b0e42ab8440f3d1df96"} gateway-1 | {"time_local":"02/Aug/2024:16:27:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2068","request_time":"0.706","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":"a860ae7e8f5a45130ff408c755067383"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1573,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1573,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.944593,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f2e0edf440d90b0e42ab8440f3d1df96","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616035,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f2e0edf440d90b0e42ab8440f3d1df96","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/a89b2b2d-c627-4715-9246-d49be662c92d' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68747bd9-e3b0-4f7a-9a9d-434b02989939","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ab9eb9fc-663f-4d07-b4c6-70ad4f193e52","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.2244537} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f2e0edf440d90b0e42ab8440f3d1df96","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bc4cad90-ac67-4e98-b3a0-198dc4dcfd3d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.2297776} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/350fab0f-76a6-4eaf-8f3a-6392b9681ff0' closed"} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f2e0edf440d90b0e42ab8440f3d1df96","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68747bd9-e3b0-4f7a-9a9d-434b02989939","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"99a94d42-8fac-40b1-b75d-63f1ff971ae5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.2402375} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ea177baa-b0fc-4da1-bff9-e300b7071218","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.2404099} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"f2e0edf440d90b0e42ab8440f3d1df96","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68747bd9-e3b0-4f7a-9a9d-434b02989939","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68747bd9-e3b0-4f7a-9a9d-434b02989939","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:15.240200671Z"}]},"request_id":"7a5467ad-d49e-4ace-a840-5adc7f4c4eba","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.245022} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f2e0edf440d90b0e42ab8440f3d1df96","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f2e0edf440d90b0e42ab8440f3d1df96"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"f2e0edf440d90b0e42ab8440f3d1df96","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f2e0edf440d90b0e42ab8440f3d1df96"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA","level":"info","message":"auth send jwt","requestID":"6c366b095072c3b928feb3d0f273c8a2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6c366b095072c3b928feb3d0f273c8a2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6c366b095072c3b928feb3d0f273c8a2"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1574,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1574,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.72667,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"6c366b095072c3b928feb3d0f273c8a2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616035,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6c366b095072c3b928feb3d0f273c8a2","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0111d46f-fb89-4b7a-a134-892a8454891f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a3818756-732e-4b4a-88b1-2c9645a6caac","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.2741485} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6c366b095072c3b928feb3d0f273c8a2","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d3e1359a-9a1f-4c80-a000-b37f7e1cd527","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.2787626} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"6c366b095072c3b928feb3d0f273c8a2","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0111d46f-fb89-4b7a-a134-892a8454891f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"026ee78e-d3c9-41a6-8ce6-c35d3f58be69","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.289931} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"61ad12da-cfbd-49be-a19f-769f51eab69e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.2900312} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"6c366b095072c3b928feb3d0f273c8a2","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0111d46f-fb89-4b7a-a134-892a8454891f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0111d46f-fb89-4b7a-a134-892a8454891f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:15.289896455Z"}]},"request_id":"2ef81ab7-0875-4bcd-8339-f0843810c6a3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.2944121} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6c366b095072c3b928feb3d0f273c8a2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6c366b095072c3b928feb3d0f273c8a2"} gateway-1 | {"time_local":"02/Aug/2024:16:27:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6c366b095072c3b928feb3d0f273c8a2"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"6c366b095072c3b928feb3d0f273c8a2","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA","level":"info","message":"auth send jwt","requestID":"e97ae53b985b0b0c525f225d9db2106f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e97ae53b985b0b0c525f225d9db2106f","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA","level":"info","message":"auth send jwt","requestID":"e0cb338767dea54574b986e45fdb31af"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e0cb338767dea54574b986e45fdb31af","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e97ae53b985b0b0c525f225d9db2106f"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e0cb338767dea54574b986e45fdb31af"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1575,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1575,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.638379,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1576,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e97ae53b985b0b0c525f225d9db2106f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616035,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e97ae53b985b0b0c525f225d9db2106f","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1576,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.614325,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e0cb338767dea54574b986e45fdb31af","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616035,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e0cb338767dea54574b986e45fdb31af","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0111d46f-fb89-4b7a-a134-892a8454891f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0111d46f-fb89-4b7a-a134-892a8454891f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:15.289896455Z"}]},"request_id":"2137841e-2a8b-492f-84af-0234d6ea41d9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.8047295} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e97ae53b985b0b0c525f225d9db2106f","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68747bd9-e3b0-4f7a-9a9d-434b02989939","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68747bd9-e3b0-4f7a-9a9d-434b02989939","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:15.240200671Z"}]},"request_id":"62fcb39e-cd04-43c6-aa17-5109e021c5f4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.8053868} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e0cb338767dea54574b986e45fdb31af","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"073f2864-849e-4a6d-9e4a-ce81344ab25c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.8099265} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e97ae53b985b0b0c525f225d9db2106f","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"855afd51-8ab8-4d8d-aee7-ace7140c3776","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.8111496} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"e0cb338767dea54574b986e45fdb31af","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68747bd9-e3b0-4f7a-9a9d-434b02989939","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68747bd9-e3b0-4f7a-9a9d-434b02989939","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:15.240200671Z"}]},"request_id":"c690b7ef-39a6-4dbd-b3ae-503c6dc935a4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.8172634} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e0cb338767dea54574b986e45fdb31af","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e0cb338767dea54574b986e45fdb31af"} gateway-1 | {"time_local":"02/Aug/2024:16:27:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/68747bd9-e3b0-4f7a-9a9d-434b02989939 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.032","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"e0cb338767dea54574b986e45fdb31af"} device-1 | {"level":"info","message":"PATCH /devices/68747bd9-e3b0-4f7a-9a9d-434b02989939 200 25ms","method":"PATCH","requestID":"e0cb338767dea54574b986e45fdb31af","responseTime":25,"status":200,"url":"/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA","level":"info","message":"auth send jwt","requestID":"18e1729d4901ad6d555da78ae898d6ae"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"18e1729d4901ad6d555da78ae898d6ae","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"18e1729d4901ad6d555da78ae898d6ae"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0111d46f-fb89-4b7a-a134-892a8454891f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0111d46f-fb89-4b7a-a134-892a8454891f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:15.289896455Z"}]},"request_id":"b54e1938-d339-4cfb-9c1d-44011c131c35","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.8257015} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e97ae53b985b0b0c525f225d9db2106f","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1577,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1577,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.660258,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:15Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e97ae53b985b0b0c525f225d9db2106f"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"18e1729d4901ad6d555da78ae898d6ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616035,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"18e1729d4901ad6d555da78ae898d6ae","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:27:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/0111d46f-fb89-4b7a-a134-892a8454891f HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"e97ae53b985b0b0c525f225d9db2106f"} device-1 | {"level":"info","message":"PATCH /devices/0111d46f-fb89-4b7a-a134-892a8454891f 200 35ms","method":"PATCH","requestID":"e97ae53b985b0b0c525f225d9db2106f","responseTime":35,"status":200,"url":"/devices/0111d46f-fb89-4b7a-a134-892a8454891f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA","level":"info","message":"auth send jwt","requestID":"185e03d16c29970f0ab54dc3f5ffb308"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"185e03d16c29970f0ab54dc3f5ffb308","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"185e03d16c29970f0ab54dc3f5ffb308"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1578,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1578,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.600717,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"185e03d16c29970f0ab54dc3f5ffb308","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616035,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"185e03d16c29970f0ab54dc3f5ffb308","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"18e1729d4901ad6d555da78ae898d6ae"} gateway-1 | {"time_local":"02/Aug/2024:16:27:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/68747bd9-e3b0-4f7a-9a9d-434b02989939/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"18e1729d4901ad6d555da78ae898d6ae"} device-1 | {"level":"info","message":"POST /devices/68747bd9-e3b0-4f7a-9a9d-434b02989939/websocket 200 16ms","method":"POST","requestID":"18e1729d4901ad6d555da78ae898d6ae","responseTime":16,"status":200,"url":"/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"185e03d16c29970f0ab54dc3f5ffb308"} gateway-1 | {"time_local":"02/Aug/2024:16:27:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/0111d46f-fb89-4b7a-a134-892a8454891f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.019","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"185e03d16c29970f0ab54dc3f5ffb308"} device-1 | {"level":"info","message":"POST /devices/0111d46f-fb89-4b7a-a134-892a8454891f/websocket 200 16ms","method":"POST","requestID":"185e03d16c29970f0ab54dc3f5ffb308","responseTime":16,"status":200,"url":"/devices/0111d46f-fb89-4b7a-a134-892a8454891f/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA","level":"info","message":"auth send jwt","requestID":"56eff47e6890f0083d27af5f9d538d40"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"56eff47e6890f0083d27af5f9d538d40","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"56eff47e6890f0083d27af5f9d538d40"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1579,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1579,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.118009,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"56eff47e6890f0083d27af5f9d538d40","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616035,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"56eff47e6890f0083d27af5f9d538d40","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68747bd9-e3b0-4f7a-9a9d-434b02989939","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68747bd9-e3b0-4f7a-9a9d-434b02989939","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:15.240200671Z"}]},"request_id":"3c69ca46-04bd-4223-8b74-b5eabc803be6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.8789139} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"56eff47e6890f0083d27af5f9d538d40","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"56eff47e6890f0083d27af5f9d538d40"} device-1 | {"level":"info","message":"GET /devices/68747bd9-e3b0-4f7a-9a9d-434b02989939? 200 13ms","method":"GET","requestID":"56eff47e6890f0083d27af5f9d538d40","responseTime":13,"status":200,"url":"/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/68747bd9-e3b0-4f7a-9a9d-434b02989939? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"56eff47e6890f0083d27af5f9d538d40"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA","level":"info","message":"auth send jwt","requestID":"f04855d97034f5d9cf6d152e2f53348f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f04855d97034f5d9cf6d152e2f53348f","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f04855d97034f5d9cf6d152e2f53348f"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1580,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1580,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.690714,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f04855d97034f5d9cf6d152e2f53348f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616035,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f04855d97034f5d9cf6d152e2f53348f","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0111d46f-fb89-4b7a-a134-892a8454891f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0111d46f-fb89-4b7a-a134-892a8454891f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:15.289896455Z"}]},"request_id":"00d5f7c3-553c-470c-87a6-0e3ee6097c6b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.8943646} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f04855d97034f5d9cf6d152e2f53348f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f04855d97034f5d9cf6d152e2f53348f"} device-1 | {"level":"info","message":"GET /devices/0111d46f-fb89-4b7a-a134-892a8454891f? 200 10ms","method":"GET","requestID":"f04855d97034f5d9cf6d152e2f53348f","responseTime":10,"status":200,"url":"/devices/0111d46f-fb89-4b7a-a134-892a8454891f?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0111d46f-fb89-4b7a-a134-892a8454891f? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f04855d97034f5d9cf6d152e2f53348f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA","level":"info","message":"auth send jwt","requestID":"627ba8df42e97a6b3b267bba65850a8b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"627ba8df42e97a6b3b267bba65850a8b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"627ba8df42e97a6b3b267bba65850a8b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1581,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1581,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.155993,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"627ba8df42e97a6b3b267bba65850a8b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616035,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"627ba8df42e97a6b3b267bba65850a8b","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94451cd7-9a48-49bc-8c39-d5073988bd18"},"level":"info","message":"Attempting to run experiment","requestID":"627ba8df42e97a6b3b267bba65850a8b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94451cd7-9a48-49bc-8c39-d5073988bd18"},"level":"info","message":"Attempting to book experiment","requestID":"627ba8df42e97a6b3b267bba65850a8b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94451cd7-9a48-49bc-8c39-d5073988bd18"},"level":"info","message":"Successfully booked experiment","requestID":"627ba8df42e97a6b3b267bba65850a8b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14915ef0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14918600-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1582,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1583,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1582,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.72366,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"14915ef0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616035,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"14915ef0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1583,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.622186,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"14918600-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616035,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"14918600-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68747bd9-e3b0-4f7a-9a9d-434b02989939","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68747bd9-e3b0-4f7a-9a9d-434b02989939","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:15.240200671Z"}]},"request_id":"3ff0aded-bb72-4f9d-be17-5f0008126ee9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.9429471} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"14915ef0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0111d46f-fb89-4b7a-a134-892a8454891f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0111d46f-fb89-4b7a-a134-892a8454891f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:15.289896455Z"}]},"request_id":"9e7b462e-995f-4a01-b361-dd5d6f8a7660","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.9435744} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"14918600-50ec-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14915ef0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/68747bd9-e3b0-4f7a-9a9d-434b02989939? 200 12ms","method":"GET","requestID":"14915ef0-50ec-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14918600-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/0111d46f-fb89-4b7a-a134-892a8454891f? 200 12ms","method":"GET","requestID":"14918600-50ec-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/0111d46f-fb89-4b7a-a134-892a8454891f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94451cd7-9a48-49bc-8c39-d5073988bd18"},"level":"info","message":"Setting up experiment","requestID":"627ba8df42e97a6b3b267bba65850a8b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94451cd7-9a48-49bc-8c39-d5073988bd18"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"627ba8df42e97a6b3b267bba65850a8b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94451cd7-9a48-49bc-8c39-d5073988bd18"},"level":"info","message":"Successfully locked booking for experiment","requestID":"627ba8df42e97a6b3b267bba65850a8b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94451cd7-9a48-49bc-8c39-d5073988bd18"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"627ba8df42e97a6b3b267bba65850a8b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94451cd7-9a48-49bc-8c39-d5073988bd18"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"627ba8df42e97a6b3b267bba65850a8b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94451cd7-9a48-49bc-8c39-d5073988bd18"},"level":"info","message":"Attempting to update booking for experiment","requestID":"627ba8df42e97a6b3b267bba65850a8b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94451cd7-9a48-49bc-8c39-d5073988bd18"},"level":"info","message":"Successfully updated booking for experiment","requestID":"627ba8df42e97a6b3b267bba65850a8b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94451cd7-9a48-49bc-8c39-d5073988bd18"},"level":"info","message":"Successfully set up experiment","requestID":"627ba8df42e97a6b3b267bba65850a8b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14999c50-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1499c360-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"149a1180-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1584,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:15Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94451cd7-9a48-49bc-8c39-d5073988bd18"},"level":"info","message":"Successfully running experiment","requestID":"627ba8df42e97a6b3b267bba65850a8b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1584,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.69266,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1585,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"14999c50-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616035,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"14999c50-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1585,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.836767,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1499c360-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616035,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1499c360-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1586,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1586,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.495505,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:15Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68747bd9-e3b0-4f7a-9a9d-434b02989939","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a71daed8-d3fa-43b8-8bf8-6854805f586e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.9979167} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68747bd9-e3b0-4f7a-9a9d-434b02989939","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68747bd9-e3b0-4f7a-9a9d-434b02989939","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:15.240200671Z"}]},"request_id":"05878f4a-43e6-4b71-9778-48e947ef7b0d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616035.9994183} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"149a1180-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939","object_type":"device","rebac_allow":false,"scope_allow":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":"149a1180-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0111d46f-fb89-4b7a-a134-892a8454891f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0111d46f-fb89-4b7a-a134-892a8454891f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:15.289896455Z"}]},"request_id":"9b16ad74-3496-488a-b27d-e13a5fa8640a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.0009778} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"14999c50-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1499c360-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"149a1180-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/68747bd9-e3b0-4f7a-9a9d-434b02989939/signaling 200 17ms","method":"POST","requestID":"149a1180-50ec-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14999c50-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/68747bd9-e3b0-4f7a-9a9d-434b02989939? 200 21ms","method":"GET","requestID":"14999c50-50ec-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1499c360-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/0111d46f-fb89-4b7a-a134-892a8454891f? 200 21ms","method":"GET","requestID":"1499c360-50ec-11ef-8434-2f6d198c7397","responseTime":21,"status":200,"url":"/devices/0111d46f-fb89-4b7a-a134-892a8454891f?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"149cf7b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"149d45d0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F94451cd7-9a48-49bc-8c39-d5073988bd18#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F94451cd7-9a48-49bc-8c39-d5073988bd18","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"ad803f82-3998-49eb-a4ee-73be83e005b1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.013883} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3b0d5729-a15f-44ac-b475-79419e1acbfb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.014244} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0111d46f-fb89-4b7a-a134-892a8454891f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a4af2441-4ff1-443d-a2dd-fa4281de1b00","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.0160074} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1587,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1588,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"627ba8df42e97a6b3b267bba65850a8b","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1587,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.266324,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"149cf7b0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f","object_type":"device","rebac_allow":false,"scope_allow":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":"149cf7b0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68747bd9-e3b0-4f7a-9a9d-434b02989939","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"86e1fcb2-0e28-4d95-b168-8f38519df23b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.0183303} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1588,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.601637,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"149d45d0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939","object_type":"device","rebac_allow":false,"scope_allow":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":"149d45d0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"149cf7b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/0111d46f-fb89-4b7a-a134-892a8454891f/signaling 200 11ms","method":"POST","requestID":"149cf7b0-50ec-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/0111d46f-fb89-4b7a-a134-892a8454891f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"149d45d0-50ec-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/94451cd7-9a48-49bc-8c39-d5073988bd18","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"627ba8df42e97a6b3b267bba65850a8b"} device-1 | {"level":"info","message":"POST /devices/68747bd9-e3b0-4f7a-9a9d-434b02989939/signaling 200 11ms","method":"POST","requestID":"149d45d0-50ec-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939/signaling"} gateway-1 | {"time_local":"02/Aug/2024:16:27:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1220","request_time":"0.126","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"627ba8df42e97a6b3b267bba65850a8b"} experiment-1 | {"level":"info","message":"POST /experiments? 201 121ms","method":"POST","requestID":"627ba8df42e97a6b3b267bba65850a8b","responseTime":121,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"149f41a0-50ec-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNn0.zsShSE-5qLLjGt9EXoBZT0tGLCGlxehZFc2xccVVgZk","level":"info","message":"auth send jwt","requestID":"3c8118c4e40fa2d772027545978a5bda"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1589,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:16Z"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3c8118c4e40fa2d772027545978a5bda","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3c8118c4e40fa2d772027545978a5bda"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0111d46f-fb89-4b7a-a134-892a8454891f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4f5e301d-4da0-49b3-8418-198b6a1f37ee","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.0302784} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1589,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.367111,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1590,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"149f41a0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f","object_type":"device","rebac_allow":false,"scope_allow":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":"149f41a0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1590,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.819199,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"3c8118c4e40fa2d772027545978a5bda","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616036,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNn0.zsShSE-5qLLjGt9EXoBZT0tGLCGlxehZFc2xccVVgZk"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"3c8118c4e40fa2d772027545978a5bda","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"149f41a0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/0111d46f-fb89-4b7a-a134-892a8454891f/signaling 200 9ms","method":"POST","requestID":"149f41a0-50ec-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/0111d46f-fb89-4b7a-a134-892a8454891f/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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68747bd9-e3b0-4f7a-9a9d-434b02989939","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68747bd9-e3b0-4f7a-9a9d-434b02989939","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:15.240200671Z"}]},"request_id":"c321e1de-39d9-47f3-acd5-efca48b9a583","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.035717} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94451cd7-9a48-49bc-8c39-d5073988bd18"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"627ba8df42e97a6b3b267bba65850a8b"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3c8118c4e40fa2d772027545978a5bda","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14a0ef50-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14a11660-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3c8118c4e40fa2d772027545978a5bda"} gateway-1 | {"time_local":"02/Aug/2024:16:27:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/68747bd9-e3b0-4f7a-9a9d-434b02989939? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3c8118c4e40fa2d772027545978a5bda"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1591,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1591,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.944627,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1592,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:16Z"} device-1 | {"level":"info","message":"GET /devices/68747bd9-e3b0-4f7a-9a9d-434b02989939? 200 11ms","method":"GET","requestID":"3c8118c4e40fa2d772027545978a5bda","responseTime":11,"status":200,"url":"/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"14a0ef50-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616035,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"14a0ef50-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1592,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.639735,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"14a11660-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616035,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"14a11660-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68747bd9-e3b0-4f7a-9a9d-434b02989939","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68747bd9-e3b0-4f7a-9a9d-434b02989939","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:15.240200671Z"}]},"request_id":"fca8d73d-28ee-4a3f-ba64-d0bcaa5c8c8d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.0439305} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNn0.zsShSE-5qLLjGt9EXoBZT0tGLCGlxehZFc2xccVVgZk","level":"info","message":"auth send jwt","requestID":"78678f86e5bf028320174bf878b04161"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"14a0ef50-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0111d46f-fb89-4b7a-a134-892a8454891f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0111d46f-fb89-4b7a-a134-892a8454891f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:15.289896455Z"}]},"request_id":"9b4051d5-cdbe-475f-bea9-e9837d5ee1eb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.0447934} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"78678f86e5bf028320174bf878b04161","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"14a11660-50ec-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"78678f86e5bf028320174bf878b04161"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1593,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:16Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14a0ef50-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/68747bd9-e3b0-4f7a-9a9d-434b02989939? 200 12ms","method":"GET","requestID":"14a0ef50-50ec-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1593,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.666378,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:16Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14a11660-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"78678f86e5bf028320174bf878b04161","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616036,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNn0.zsShSE-5qLLjGt9EXoBZT0tGLCGlxehZFc2xccVVgZk"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"78678f86e5bf028320174bf878b04161","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/0111d46f-fb89-4b7a-a134-892a8454891f? 200 12ms","method":"GET","requestID":"14a11660-50ec-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/0111d46f-fb89-4b7a-a134-892a8454891f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94451cd7-9a48-49bc-8c39-d5073988bd18"},"level":"info","message":"Building connection plan","requestID":"627ba8df42e97a6b3b267bba65850a8b"} 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":"e112eb36-41a6-4f6f-a4a0-eb904bd05ff1"},{"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":"e7ef9142-f788-4e83-87e7-4ebe8c0b9375"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"ec7c4a40-259a-4909-a52e-4adc0282c49f"}]},"level":"info","message":"Built pairwise service configurations","requestID":"627ba8df42e97a6b3b267bba65850a8b"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"14a33940-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"14a33940-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"14a33940-50ec-11ef-a432-47ab85bb6d58","responseTime":1,"status":201,"url":"/rooms"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0111d46f-fb89-4b7a-a134-892a8454891f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0111d46f-fb89-4b7a-a134-892a8454891f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:15.289896455Z"}]},"request_id":"31822eea-479d-457f-b8b3-87a4cb0ca867","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.0540407} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/67dcc51b-ceef-43f2-b0c3-cbfc89f044e5?id=8bc2680a-decb-4bee-9056-43d0a11cec97","ws://localhost/rooms/67dcc51b-ceef-43f2-b0c3-cbfc89f044e5?id=d096135f-25fa-4f76-9dee-2786a28c03e7"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"627ba8df42e97a6b3b267bba65850a8b"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"78678f86e5bf028320174bf878b04161","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"14a3d580-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"78678f86e5bf028320174bf878b04161"} device-1 | {"level":"info","message":"GET /devices/0111d46f-fb89-4b7a-a134-892a8454891f? 200 11ms","method":"GET","requestID":"78678f86e5bf028320174bf878b04161","responseTime":11,"status":200,"url":"/devices/0111d46f-fb89-4b7a-a134-892a8454891f?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1594,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:16Z"} gateway-1 | {"time_local":"02/Aug/2024:16:27:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0111d46f-fb89-4b7a-a134-892a8454891f? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"78678f86e5bf028320174bf878b04161"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1594,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.410904,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"14a3d580-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616035,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNX0.LqcsvmA-tRKLSxaUOysr4KtU1HuE1X9LJ4L3HSHbvzA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"14a3d580-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"8fddc5fb-bed8-4571-a444-1aa66756d80d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.0676842} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"43b9b366-e382-4ba9-9cb4-976b28c28a90","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.0679686} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"14a3d580-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"14a3d580-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"14a3d580-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f0140747-02a2-4f69-ae1f-130c33107217'","requestID":"14a3d580-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f0140747-02a2-4f69-ae1f-130c33107217'","requestID":"14a3d580-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"14a3d580-50ec-11ef-8434-2f6d198c7397"} 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":"14a3d580-50ec-11ef-8434-2f6d198c7397","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":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"14a3d580-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f0140747-02a2-4f69-ae1f-130c33107217' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f0140747-02a2-4f69-ae1f-130c33107217","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"14a9f000-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8bc2680a-decb-4bee-9056-43d0a11cec97\" in room \"http://localhost/rooms/67dcc51b-ceef-43f2-b0c3-cbfc89f044e5\"","requestID":"14a9f000-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"14a9f000-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"14aa1710-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d096135f-25fa-4f76-9dee-2786a28c03e7\" in room \"http://localhost/rooms/67dcc51b-ceef-43f2-b0c3-cbfc89f044e5\"","requestID":"14aa1710-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"14aa1710-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d096135f-25fa-4f76-9dee-2786a28c03e7\" in room \"http://localhost/rooms/67dcc51b-ceef-43f2-b0c3-cbfc89f044e5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d096135f-25fa-4f76-9dee-2786a28c03e7\" in room \"http://localhost/rooms/67dcc51b-ceef-43f2-b0c3-cbfc89f044e5\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9d11c1e0c67ad4c35da6dffa6409ed16","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":"9d11c1e0c67ad4c35da6dffa6409ed16","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/f0140747-02a2-4f69-ae1f-130c33107217"}}},"level":"info","message":"received a callback","requestID":"9d11c1e0c67ad4c35da6dffa6409ed16"} device-1 | {"data":{"peerconnection":"f0140747-02a2-4f69-ae1f-130c33107217","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"9d11c1e0c67ad4c35da6dffa6409ed16","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27: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":"9d11c1e0c67ad4c35da6dffa6409ed16"} device-1 | {"data":{"peerconnection":"f0140747-02a2-4f69-ae1f-130c33107217","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94451cd7-9a48-49bc-8c39-d5073988bd18"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"627ba8df42e97a6b3b267bba65850a8b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14ae83e0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1595,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68747bd9-e3b0-4f7a-9a9d-434b02989939","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bbbbacb0-63e2-44f0-950f-c62aac5789ce","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.130444} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1595,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.445895,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"14ae83e0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939","object_type":"device","rebac_allow":false,"scope_allow":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":"14ae83e0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f0140747-02a2-4f69-ae1f-130c33107217' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f0140747-02a2-4f69-ae1f-130c33107217","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14ae83e0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/68747bd9-e3b0-4f7a-9a9d-434b02989939/signaling 200 9ms","method":"POST","requestID":"14ae83e0-50ec-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ca74583b5736028abd7fac6a88691b1f","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":"ca74583b5736028abd7fac6a88691b1f","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14b03190-50ec-11ef-8434-2f6d198c7397"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/f0140747-02a2-4f69-ae1f-130c33107217"}}},"level":"info","message":"received a callback","requestID":"ca74583b5736028abd7fac6a88691b1f"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1596,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0111d46f-fb89-4b7a-a134-892a8454891f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c9915343-6f2e-4868-8efb-077a3af28c1f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.1412983} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1596,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.324498,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"14b03190-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f","object_type":"device","rebac_allow":false,"scope_allow":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":"14b03190-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"14b0f4e0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1597,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:16Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14b03190-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/0111d46f-fb89-4b7a-a134-892a8454891f/signaling 200 9ms","method":"POST","requestID":"14b03190-50ec-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/0111d46f-fb89-4b7a-a134-892a8454891f/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff0140747-02a2-4f69-ae1f-130c33107217","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"14614b6a-f8ca-404a-995b-b70a8ab296f8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.1472178} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1597,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.471858,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f0140747-02a2-4f69-ae1f-130c33107217","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"14b0f4e0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f0140747-02a2-4f69-ae1f-130c33107217","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":"14b0f4e0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"14b0f4e0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/f0140747-02a2-4f69-ae1f-130c33107217 200 8ms","method":"GET","requestID":"14b0f4e0-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/peerconnections/f0140747-02a2-4f69-ae1f-130c33107217"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 28ms","method":"POST","requestID":"ca74583b5736028abd7fac6a88691b1f","responseTime":28,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27: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.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"ca74583b5736028abd7fac6a88691b1f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14b49e60-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1598,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68747bd9-e3b0-4f7a-9a9d-434b02989939","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b8c0bb1a-2147-4394-b447-5a431c6d9082","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.1704507} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1598,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.163898,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"14b49e60-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939","object_type":"device","rebac_allow":false,"scope_allow":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":"14b49e60-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14b49e60-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/68747bd9-e3b0-4f7a-9a9d-434b02989939/signaling 200 8ms","method":"POST","requestID":"14b49e60-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14b62500-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1599,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0111d46f-fb89-4b7a-a134-892a8454891f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7c780bf9-aa3a-4caf-976d-18d1f49ce01a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.1806211} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1599,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.418759,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"14b62500-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f","object_type":"device","rebac_allow":false,"scope_allow":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":"14b62500-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14b62500-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/0111d46f-fb89-4b7a-a134-892a8454891f/signaling 200 8ms","method":"POST","requestID":"14b62500-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/0111d46f-fb89-4b7a-a134-892a8454891f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNn0.zsShSE-5qLLjGt9EXoBZT0tGLCGlxehZFc2xccVVgZk","level":"info","message":"auth send jwt","requestID":"15702c6375a44b86ba3d445c84d2ee34"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"15702c6375a44b86ba3d445c84d2ee34","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/94451cd7-9a48-49bc-8c39-d5073988bd18","requestID":"15702c6375a44b86ba3d445c84d2ee34"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1600,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1600,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.651095,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/94451cd7-9a48-49bc-8c39-d5073988bd18","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"15702c6375a44b86ba3d445c84d2ee34","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/94451cd7-9a48-49bc-8c39-d5073988bd18","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616036,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNn0.zsShSE-5qLLjGt9EXoBZT0tGLCGlxehZFc2xccVVgZk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"15702c6375a44b86ba3d445c84d2ee34","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/94451cd7-9a48-49bc-8c39-d5073988bd18","requestID":"15702c6375a44b86ba3d445c84d2ee34"} experiment-1 | {"level":"info","message":"GET /experiments/94451cd7-9a48-49bc-8c39-d5073988bd18 200 9ms","method":"GET","requestID":"15702c6375a44b86ba3d445c84d2ee34","responseTime":9,"status":200,"url":"/experiments/94451cd7-9a48-49bc-8c39-d5073988bd18"} gateway-1 | {"time_local":"02/Aug/2024:16:27:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/94451cd7-9a48-49bc-8c39-d5073988bd18 HTTP/1.1","status": "200","body_bytes_sent":"1293","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"15702c6375a44b86ba3d445c84d2ee34"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNn0.zsShSE-5qLLjGt9EXoBZT0tGLCGlxehZFc2xccVVgZk","level":"info","message":"auth send jwt","requestID":"4b96e5b7f102b2384194e779570735cd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4b96e5b7f102b2384194e779570735cd","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/94451cd7-9a48-49bc-8c39-d5073988bd18","requestID":"4b96e5b7f102b2384194e779570735cd"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1601,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1601,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.859161,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/94451cd7-9a48-49bc-8c39-d5073988bd18","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"4b96e5b7f102b2384194e779570735cd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/94451cd7-9a48-49bc-8c39-d5073988bd18","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616036,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNn0.zsShSE-5qLLjGt9EXoBZT0tGLCGlxehZFc2xccVVgZk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4b96e5b7f102b2384194e779570735cd","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94451cd7-9a48-49bc-8c39-d5073988bd18"},"level":"info","message":"Attempting to finish experiment","requestID":"4b96e5b7f102b2384194e779570735cd"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"14be1440-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1602,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1602,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.653427,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f0140747-02a2-4f69-ae1f-130c33107217","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"14be1440-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/f0140747-02a2-4f69-ae1f-130c33107217","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616036,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNn0.zsShSE-5qLLjGt9EXoBZT0tGLCGlxehZFc2xccVVgZk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"14be1440-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:27:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/67dcc51b-ceef-43f2-b0c3-cbfc89f044e5?id=8bc2680a-decb-4bee-9056-43d0a11cec97 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.147","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"e8e4b12b05043e0f2fae450cfceed492"} gateway-1 | {"time_local":"02/Aug/2024:16:27:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/67dcc51b-ceef-43f2-b0c3-cbfc89f044e5?id=d096135f-25fa-4f76-9dee-2786a28c03e7 HTTP/1.1","status": "101","body_bytes_sent":"458","request_time":"0.148","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"850404a5c2c441f6aa28e09d26ca2093"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"8bc2680a-decb-4bee-9056-43d0a11cec97\" in room \"http://localhost/rooms/67dcc51b-ceef-43f2-b0c3-cbfc89f044e5\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"8bc2680a-decb-4bee-9056-43d0a11cec97\" from room \"http://localhost/rooms/67dcc51b-ceef-43f2-b0c3-cbfc89f044e5\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"d096135f-25fa-4f76-9dee-2786a28c03e7\" in room \"http://localhost/rooms/67dcc51b-ceef-43f2-b0c3-cbfc89f044e5\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"d096135f-25fa-4f76-9dee-2786a28c03e7\" from room \"http://localhost/rooms/67dcc51b-ceef-43f2-b0c3-cbfc89f044e5\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f0140747-02a2-4f69-ae1f-130c33107217' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f0140747-02a2-4f69-ae1f-130c33107217' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f0140747-02a2-4f69-ae1f-130c33107217","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a94de1b8a0eb705209df27ef77183ebf","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":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff0140747-02a2-4f69-ae1f-130c33107217': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff0140747-02a2-4f69-ae1f-130c33107217","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"39695366-5c76-4d9a-afd1-d4588bb06ef1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.2469738} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2b91d870-ce57-4335-b452-2a91dea9ad9e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.2471762} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a94de1b8a0eb705209df27ef77183ebf","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"674b0a334ee62f5b523c2cbb787c4b83","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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/f0140747-02a2-4f69-ae1f-130c33107217"}}},"level":"info","message":"received a callback","requestID":"a94de1b8a0eb705209df27ef77183ebf"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"674b0a334ee62f5b523c2cbb787c4b83","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"14be1440-50ec-11ef-8434-2f6d198c7397","responseTime":6,"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/f0140747-02a2-4f69-ae1f-130c33107217"}}},"level":"info","message":"received a callback","requestID":"674b0a334ee62f5b523c2cbb787c4b83"} device-1 | {"data":{"peerconnection":"f0140747-02a2-4f69-ae1f-130c33107217","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"14be1440-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/f0140747-02a2-4f69-ae1f-130c33107217 204 43ms","method":"DELETE","requestID":"14be1440-50ec-11ef-8434-2f6d198c7397","responseTime":43,"status":204,"url":"/peerconnections/f0140747-02a2-4f69-ae1f-130c33107217"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94451cd7-9a48-49bc-8c39-d5073988bd18"},"level":"info","message":"Successfully finished experiment","requestID":"4b96e5b7f102b2384194e779570735cd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14c73c00-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1603,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68747bd9-e3b0-4f7a-9a9d-434b02989939","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1f4ae937-bafb-4f09-8ea5-8626c735bf10","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.2926996} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1603,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.739027,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"14c73c00-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939","object_type":"device","rebac_allow":false,"scope_allow":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":"14c73c00-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14c73c00-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/68747bd9-e3b0-4f7a-9a9d-434b02989939/signaling 200 9ms","method":"POST","requestID":"14c73c00-50ec-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14c8e9b0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F94451cd7-9a48-49bc-8c39-d5073988bd18': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F94451cd7-9a48-49bc-8c39-d5073988bd18","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"8c1b856a-d0cb-4f55-8f59-cddd0a695f66","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.2998505} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5f36b5a4-3079-4f2d-bf3d-c88acbcb2da7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.300189} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"4b96e5b7f102b2384194e779570735cd","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1604,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0111d46f-fb89-4b7a-a134-892a8454891f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4495b4e2-51e2-4ce0-9e5f-f364e35e6af9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.305083} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1604,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.805408,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"14c8e9b0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f","object_type":"device","rebac_allow":false,"scope_allow":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":"14c8e9b0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14c8e9b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/0111d46f-fb89-4b7a-a134-892a8454891f/signaling 200 11ms","method":"POST","requestID":"14c8e9b0-50ec-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/0111d46f-fb89-4b7a-a134-892a8454891f/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/94451cd7-9a48-49bc-8c39-d5073988bd18","requestID":"4b96e5b7f102b2384194e779570735cd"} gateway-1 | {"time_local":"02/Aug/2024:16:27:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/94451cd7-9a48-49bc-8c39-d5073988bd18 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.151","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4b96e5b7f102b2384194e779570735cd"} gateway-1 | {"time_local":"02/Aug/2024:16:27:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2070","request_time":"0.525","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"e3839f653ef82509c365e8d2deff419f"} experiment-1 | {"level":"info","message":"DELETE /experiments/94451cd7-9a48-49bc-8c39-d5073988bd18 204 150ms","method":"DELETE","requestID":"4b96e5b7f102b2384194e779570735cd","responseTime":150,"status":204,"url":"/experiments/94451cd7-9a48-49bc-8c39-d5073988bd18"} gateway-1 | {"time_local":"02/Aug/2024:16:27:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2067","request_time":"0.516","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"f94c4ec6a015fc155347d063f5cd7ff5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"a94de1b8a0eb705209df27ef77183ebf","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27: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.124","http_referrer":"","http_user_agent":"node-fetch","requestID":"a94de1b8a0eb705209df27ef77183ebf"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"674b0a334ee62f5b523c2cbb787c4b83","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27: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.124","http_referrer":"","http_user_agent":"node-fetch","requestID":"674b0a334ee62f5b523c2cbb787c4b83"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNn0.zsShSE-5qLLjGt9EXoBZT0tGLCGlxehZFc2xccVVgZk","level":"info","message":"auth send jwt","requestID":"f7641101b680248f156ca8a819675123"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f7641101b680248f156ca8a819675123","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f7641101b680248f156ca8a819675123"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/0111d46f-fb89-4b7a-a134-892a8454891f' closed"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1605,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1605,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.731319,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f7641101b680248f156ca8a819675123","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616036,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNn0.zsShSE-5qLLjGt9EXoBZT0tGLCGlxehZFc2xccVVgZk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f7641101b680248f156ca8a819675123","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/68747bd9-e3b0-4f7a-9a9d-434b02989939' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619c7760-69a9-4d8c-adbc-c0725e71bcc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"76bb8428-4fd4-4cf6-bb9d-08c3697c150f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.3936272} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f7641101b680248f156ca8a819675123","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f0808e1a-8c9f-4cae-ae08-0ac0d05327ec","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.3986459} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f7641101b680248f156ca8a819675123","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619c7760-69a9-4d8c-adbc-c0725e71bcc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"d82d3a5e-6468-4725-b65b-28458edf8590","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.4086602} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"66b79300-c9f7-4c64-b1ed-428f0c8faf84","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.4088547} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"f7641101b680248f156ca8a819675123","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619c7760-69a9-4d8c-adbc-c0725e71bcc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619c7760-69a9-4d8c-adbc-c0725e71bcc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:16.408624549Z"}]},"request_id":"3364f7b6-7121-48b8-a00d-64ec95b2882d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.4135478} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f7641101b680248f156ca8a819675123","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f7641101b680248f156ca8a819675123"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"f7641101b680248f156ca8a819675123","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f7641101b680248f156ca8a819675123"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNn0.zsShSE-5qLLjGt9EXoBZT0tGLCGlxehZFc2xccVVgZk","level":"info","message":"auth send jwt","requestID":"a6a722553e4bb2a8a8e33a26d5e852db"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a6a722553e4bb2a8a8e33a26d5e852db","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a6a722553e4bb2a8a8e33a26d5e852db"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1606,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1606,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.022519,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a6a722553e4bb2a8a8e33a26d5e852db","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616036,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNn0.zsShSE-5qLLjGt9EXoBZT0tGLCGlxehZFc2xccVVgZk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a6a722553e4bb2a8a8e33a26d5e852db","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85f9f5b4-74f0-4c55-abc0-318f18547b45","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"cb49a0ab-5950-49fa-bca8-3788b114914a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.4369938} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a6a722553e4bb2a8a8e33a26d5e852db","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b992a3a2-c37c-4f11-806a-7739d9edef9e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.4423404} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a6a722553e4bb2a8a8e33a26d5e852db","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85f9f5b4-74f0-4c55-abc0-318f18547b45","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"f011f24c-d032-43e3-9846-47c4352f88ff","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.4579945} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b4a4e8d0-677f-4757-b13b-6d4a7c6dcc62","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.4581153} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"a6a722553e4bb2a8a8e33a26d5e852db","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85f9f5b4-74f0-4c55-abc0-318f18547b45","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85f9f5b4-74f0-4c55-abc0-318f18547b45","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:16.457938343Z"}]},"request_id":"fff7bdba-3381-4a46-adef-eef5d1788899","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.462355} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a6a722553e4bb2a8a8e33a26d5e852db","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a6a722553e4bb2a8a8e33a26d5e852db"} gateway-1 | {"time_local":"02/Aug/2024:16:27:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a6a722553e4bb2a8a8e33a26d5e852db"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"a6a722553e4bb2a8a8e33a26d5e852db","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNn0.zsShSE-5qLLjGt9EXoBZT0tGLCGlxehZFc2xccVVgZk","level":"info","message":"auth send jwt","requestID":"f296d78afead1a5ea266a73ca3bcef8b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f296d78afead1a5ea266a73ca3bcef8b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f296d78afead1a5ea266a73ca3bcef8b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNn0.zsShSE-5qLLjGt9EXoBZT0tGLCGlxehZFc2xccVVgZk","level":"info","message":"auth send jwt","requestID":"ae4bd1e076dbb0325a1e7cdb8399d9fa"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ae4bd1e076dbb0325a1e7cdb8399d9fa"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ae4bd1e076dbb0325a1e7cdb8399d9fa","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1607,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1607,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.791412,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f296d78afead1a5ea266a73ca3bcef8b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616036,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNn0.zsShSE-5qLLjGt9EXoBZT0tGLCGlxehZFc2xccVVgZk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f296d78afead1a5ea266a73ca3bcef8b","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1608,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1608,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.564184,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ae4bd1e076dbb0325a1e7cdb8399d9fa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616036,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNn0.zsShSE-5qLLjGt9EXoBZT0tGLCGlxehZFc2xccVVgZk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ae4bd1e076dbb0325a1e7cdb8399d9fa","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619c7760-69a9-4d8c-adbc-c0725e71bcc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619c7760-69a9-4d8c-adbc-c0725e71bcc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:16.408624549Z"}]},"request_id":"4e9a6a2f-c9db-47d8-8d21-9a56d9f96dd1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.9720547} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f296d78afead1a5ea266a73ca3bcef8b","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85f9f5b4-74f0-4c55-abc0-318f18547b45","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85f9f5b4-74f0-4c55-abc0-318f18547b45","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:16.457938343Z"}]},"request_id":"3a68bb6c-f0b2-4a30-a788-720f0a3647a9","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.9728615} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ae4bd1e076dbb0325a1e7cdb8399d9fa","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"08b53111-ac35-479d-8ae9-32843e456ead","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.9769115} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"f296d78afead1a5ea266a73ca3bcef8b","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c6d8cbf9-2332-4b13-ada6-8e3503130341","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.9779618} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ae4bd1e076dbb0325a1e7cdb8399d9fa","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85f9f5b4-74f0-4c55-abc0-318f18547b45","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85f9f5b4-74f0-4c55-abc0-318f18547b45","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:16.457938343Z"}]},"request_id":"867a741f-28e3-4464-879e-3058c17fafeb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.9812403} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ae4bd1e076dbb0325a1e7cdb8399d9fa","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ae4bd1e076dbb0325a1e7cdb8399d9fa"} device-1 | {"level":"info","message":"PATCH /devices/85f9f5b4-74f0-4c55-abc0-318f18547b45 200 21ms","method":"PATCH","requestID":"ae4bd1e076dbb0325a1e7cdb8399d9fa","responseTime":21,"status":200,"url":"/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45"} gateway-1 | {"time_local":"02/Aug/2024:16:27:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/85f9f5b4-74f0-4c55-abc0-318f18547b45 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"ae4bd1e076dbb0325a1e7cdb8399d9fa"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNn0.zsShSE-5qLLjGt9EXoBZT0tGLCGlxehZFc2xccVVgZk","level":"info","message":"auth send jwt","requestID":"cd665fbba5a0865dbd0da0ba90b0f997"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"cd665fbba5a0865dbd0da0ba90b0f997","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"cd665fbba5a0865dbd0da0ba90b0f997"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1609,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1609,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.806768,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:16Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cd665fbba5a0865dbd0da0ba90b0f997","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616036,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzNn0.zsShSE-5qLLjGt9EXoBZT0tGLCGlxehZFc2xccVVgZk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cd665fbba5a0865dbd0da0ba90b0f997","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619c7760-69a9-4d8c-adbc-c0725e71bcc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619c7760-69a9-4d8c-adbc-c0725e71bcc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:16.408624549Z"}]},"request_id":"03fd1e62-6603-4e5d-ac7b-c57e5a6c96c8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616036.9925} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f296d78afead1a5ea266a73ca3bcef8b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f296d78afead1a5ea266a73ca3bcef8b"} device-1 | {"level":"info","message":"PATCH /devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5 200 37ms","method":"PATCH","requestID":"f296d78afead1a5ea266a73ca3bcef8b","responseTime":37,"status":200,"url":"/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5"} gateway-1 | {"time_local":"02/Aug/2024:16:27:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"f296d78afead1a5ea266a73ca3bcef8b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro","level":"info","message":"auth send jwt","requestID":"81ecc1d65ebb5cb57bb273730a40e7cd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"81ecc1d65ebb5cb57bb273730a40e7cd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"81ecc1d65ebb5cb57bb273730a40e7cd"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1610,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1610,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.662082,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"81ecc1d65ebb5cb57bb273730a40e7cd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616037,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"81ecc1d65ebb5cb57bb273730a40e7cd","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"cd665fbba5a0865dbd0da0ba90b0f997"} device-1 | {"level":"info","message":"POST /devices/85f9f5b4-74f0-4c55-abc0-318f18547b45/websocket 200 20ms","method":"POST","requestID":"cd665fbba5a0865dbd0da0ba90b0f997","responseTime":20,"status":200,"url":"/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:27:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/85f9f5b4-74f0-4c55-abc0-318f18547b45/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"cd665fbba5a0865dbd0da0ba90b0f997"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"81ecc1d65ebb5cb57bb273730a40e7cd"} device-1 | {"level":"info","message":"POST /devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5/websocket 200 15ms","method":"POST","requestID":"81ecc1d65ebb5cb57bb273730a40e7cd","responseTime":15,"status":200,"url":"/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:27:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.019","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"81ecc1d65ebb5cb57bb273730a40e7cd"} device-1 | {"level":"info","message":"device 'http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro","level":"info","message":"auth send jwt","requestID":"04558a962fc3bd67559d2e69e8d162cb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"04558a962fc3bd67559d2e69e8d162cb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"04558a962fc3bd67559d2e69e8d162cb"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1611,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1611,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.870328,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"04558a962fc3bd67559d2e69e8d162cb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616037,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"04558a962fc3bd67559d2e69e8d162cb","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619c7760-69a9-4d8c-adbc-c0725e71bcc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619c7760-69a9-4d8c-adbc-c0725e71bcc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:16.408624549Z"}]},"request_id":"31b64ae3-d155-4db2-95e8-5e519cdc4076","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.0470126} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"04558a962fc3bd67559d2e69e8d162cb","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"04558a962fc3bd67559d2e69e8d162cb"} gateway-1 | {"time_local":"02/Aug/2024:16:27:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"04558a962fc3bd67559d2e69e8d162cb"} device-1 | {"level":"info","message":"GET /devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5? 200 13ms","method":"GET","requestID":"04558a962fc3bd67559d2e69e8d162cb","responseTime":13,"status":200,"url":"/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro","level":"info","message":"auth send jwt","requestID":"d72502b90f9a06f01cfc9c33352f829b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d72502b90f9a06f01cfc9c33352f829b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d72502b90f9a06f01cfc9c33352f829b"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1612,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1612,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.664458,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d72502b90f9a06f01cfc9c33352f829b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616037,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d72502b90f9a06f01cfc9c33352f829b","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85f9f5b4-74f0-4c55-abc0-318f18547b45","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85f9f5b4-74f0-4c55-abc0-318f18547b45","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:16.457938343Z"}]},"request_id":"174d294c-cdac-4fe9-bd39-9520f0e32ce2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.0641825} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d72502b90f9a06f01cfc9c33352f829b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d72502b90f9a06f01cfc9c33352f829b"} device-1 | {"level":"info","message":"GET /devices/85f9f5b4-74f0-4c55-abc0-318f18547b45? 200 10ms","method":"GET","requestID":"d72502b90f9a06f01cfc9c33352f829b","responseTime":10,"status":200,"url":"/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/85f9f5b4-74f0-4c55-abc0-318f18547b45? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d72502b90f9a06f01cfc9c33352f829b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro","level":"info","message":"auth send jwt","requestID":"eb2696dee64f089d8501dfdb6e96e1a5"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"eb2696dee64f089d8501dfdb6e96e1a5","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"eb2696dee64f089d8501dfdb6e96e1a5"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1613,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1613,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.76898,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"eb2696dee64f089d8501dfdb6e96e1a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616037,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"eb2696dee64f089d8501dfdb6e96e1a5","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb"},"level":"info","message":"Attempting to run experiment","requestID":"eb2696dee64f089d8501dfdb6e96e1a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb"},"level":"info","message":"Attempting to book experiment","requestID":"eb2696dee64f089d8501dfdb6e96e1a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb"},"level":"info","message":"Successfully booked experiment","requestID":"eb2696dee64f089d8501dfdb6e96e1a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1544a960-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1544f780-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1614,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1614,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.044264,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1544a960-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616037,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1544a960-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1615,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1615,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.502792,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1544f780-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616037,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1544f780-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619c7760-69a9-4d8c-adbc-c0725e71bcc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619c7760-69a9-4d8c-adbc-c0725e71bcc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:16.408624549Z"}]},"request_id":"42a996bb-0f42-4fe5-ab6f-c3a8fc51845b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.1193583} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1544a960-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85f9f5b4-74f0-4c55-abc0-318f18547b45","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85f9f5b4-74f0-4c55-abc0-318f18547b45","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:16.457938343Z"}]},"request_id":"5760c852-266f-493c-aac5-351bed2e1b8b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.1213632} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1544f780-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1544a960-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5? 200 18ms","method":"GET","requestID":"1544a960-50ec-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1544f780-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/85f9f5b4-74f0-4c55-abc0-318f18547b45? 200 17ms","method":"GET","requestID":"1544f780-50ec-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb"},"level":"info","message":"Setting up experiment","requestID":"eb2696dee64f089d8501dfdb6e96e1a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"eb2696dee64f089d8501dfdb6e96e1a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb"},"level":"info","message":"Successfully locked booking for experiment","requestID":"eb2696dee64f089d8501dfdb6e96e1a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"eb2696dee64f089d8501dfdb6e96e1a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"eb2696dee64f089d8501dfdb6e96e1a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb"},"level":"info","message":"Attempting to update booking for experiment","requestID":"eb2696dee64f089d8501dfdb6e96e1a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb"},"level":"info","message":"Successfully updated booking for experiment","requestID":"eb2696dee64f089d8501dfdb6e96e1a5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb"},"level":"info","message":"Successfully set up experiment","requestID":"eb2696dee64f089d8501dfdb6e96e1a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"154f30b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"154f57c0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"154fa5e0-50ec-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb"},"level":"info","message":"Successfully running experiment","requestID":"eb2696dee64f089d8501dfdb6e96e1a5"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1616,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1617,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1616,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.226508,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"154f30b0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616037,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"154f30b0-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1617,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.169208,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"154f57c0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616037,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"154f57c0-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35784","level":"info","msg":"Received request.","req_id":1618,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619c7760-69a9-4d8c-adbc-c0725e71bcc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619c7760-69a9-4d8c-adbc-c0725e71bcc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:16.408624549Z"}]},"request_id":"dcc0281f-90db-4f90-80ff-fa59b661c25f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.1925943} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"154f30b0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85f9f5b4-74f0-4c55-abc0-318f18547b45","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85f9f5b4-74f0-4c55-abc0-318f18547b45","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:16.457938343Z"}]},"request_id":"dc7eeef9-d597-4fea-8963-a4d9297e022f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.1950352} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"154f57c0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619c7760-69a9-4d8c-adbc-c0725e71bcc5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9739a691-c497-44e8-b9dc-a43a20d77a3a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.1963675} authorization-1 | {"client_addr":"127.0.0.1:35784","level":"info","msg":"Sent response.","req_id":1618,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.81829,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"154fa5e0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5","object_type":"device","rebac_allow":false,"scope_allow":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":"154fa5e0-50ec-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"154f30b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5? 200 23ms","method":"GET","requestID":"154f30b0-50ec-11ef-8434-2f6d198c7397","responseTime":23,"status":200,"url":"/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"154f57c0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/85f9f5b4-74f0-4c55-abc0-318f18547b45? 200 23ms","method":"GET","requestID":"154f57c0-50ec-11ef-8434-2f6d198c7397","responseTime":23,"status":200,"url":"/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"154fa5e0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5/signaling 200 22ms","method":"POST","requestID":"154fa5e0-50ec-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F94a4c328-f726-44ba-b636-4e5b57a6ddfb#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F94a4c328-f726-44ba-b636-4e5b57a6ddfb","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"da40404a-463e-4d96-994f-f69a1e3223eb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.205276} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"91ecd73c-eb6e-4d7d-882c-6d8548e69e45","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.2055125} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"15534f60-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"eb2696dee64f089d8501dfdb6e96e1a5","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"15537670-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1619,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1620,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619c7760-69a9-4d8c-adbc-c0725e71bcc5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9cd565d5-dbf9-45b1-bea4-531a7222ccd0","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.2129755} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1619,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.330342,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"15534f60-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5","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 | {"data":{"experiment":"http://localhost/experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"eb2696dee64f089d8501dfdb6e96e1a5"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"15534f60-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85f9f5b4-74f0-4c55-abc0-318f18547b45","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"96226bca-9505-4d8b-b65b-0f6d2558ba18","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.2144415} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1620,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.839642,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} gateway-1 | {"time_local":"02/Aug/2024:16:27:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1220","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"eb2696dee64f089d8501dfdb6e96e1a5"} experiment-1 | {"level":"info","message":"POST /experiments? 201 144ms","method":"POST","requestID":"eb2696dee64f089d8501dfdb6e96e1a5","responseTime":144,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"15537670-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45","object_type":"device","rebac_allow":false,"scope_allow":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":"15537670-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"15534f60-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5/signaling 200 14ms","method":"POST","requestID":"15534f60-50ec-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"15537670-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/85f9f5b4-74f0-4c55-abc0-318f18547b45/signaling 200 14ms","method":"POST","requestID":"15537670-50ec-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro","level":"info","message":"auth send jwt","requestID":"2b2f754af119bde7f96b05cac3420c91"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2b2f754af119bde7f96b05cac3420c91","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1555e770-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2b2f754af119bde7f96b05cac3420c91"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1621,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1622,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1622,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.049168,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"2b2f754af119bde7f96b05cac3420c91","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616037,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2b2f754af119bde7f96b05cac3420c91","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85f9f5b4-74f0-4c55-abc0-318f18547b45","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f24ff2a2-75eb-4e5e-b149-86b146ee902b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.2286875} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1621,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.605097,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1555e770-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45","object_type":"device","rebac_allow":false,"scope_allow":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":"1555e770-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619c7760-69a9-4d8c-adbc-c0725e71bcc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619c7760-69a9-4d8c-adbc-c0725e71bcc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:16.408624549Z"}]},"request_id":"043f0f13-8e18-4f67-ba08-3b43915035cd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.232785} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1555e770-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2b2f754af119bde7f96b05cac3420c91","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/85f9f5b4-74f0-4c55-abc0-318f18547b45/signaling 200 10ms","method":"POST","requestID":"1555e770-50ec-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"eb2696dee64f089d8501dfdb6e96e1a5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1557bc30-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"15580a50-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2b2f754af119bde7f96b05cac3420c91"} gateway-1 | {"time_local":"02/Aug/2024:16:27:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2b2f754af119bde7f96b05cac3420c91"} device-1 | {"level":"info","message":"GET /devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5? 200 14ms","method":"GET","requestID":"2b2f754af119bde7f96b05cac3420c91","responseTime":14,"status":200,"url":"/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1623,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1624,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1623,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.185629,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1557bc30-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616037,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1557bc30-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1624,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.324809,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"15580a50-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616037,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro","level":"info","message":"auth send jwt","requestID":"d3161ca26e3dcf0306b61b715f4a10ed"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"15580a50-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d3161ca26e3dcf0306b61b715f4a10ed","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d3161ca26e3dcf0306b61b715f4a10ed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619c7760-69a9-4d8c-adbc-c0725e71bcc5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619c7760-69a9-4d8c-adbc-c0725e71bcc5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:16.408624549Z"}]},"request_id":"783b85ee-0a7c-4586-8da1-43819d27633a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.245248} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1557bc30-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85f9f5b4-74f0-4c55-abc0-318f18547b45","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85f9f5b4-74f0-4c55-abc0-318f18547b45","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:16.457938343Z"}]},"request_id":"37aa5ac6-c3b3-4d81-897c-80b5e458a79a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.2460713} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"15580a50-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1625,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1625,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.025109,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d3161ca26e3dcf0306b61b715f4a10ed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616037,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d3161ca26e3dcf0306b61b715f4a10ed","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1557bc30-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5? 200 15ms","method":"GET","requestID":"1557bc30-50ec-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"15580a50-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/85f9f5b4-74f0-4c55-abc0-318f18547b45? 200 17ms","method":"GET","requestID":"15580a50-50ec-11ef-8434-2f6d198c7397","responseTime":17,"status":200,"url":"/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85f9f5b4-74f0-4c55-abc0-318f18547b45","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85f9f5b4-74f0-4c55-abc0-318f18547b45","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:16.457938343Z"}]},"request_id":"5d34e2af-f089-4e87-9cbe-12cd0add504c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.2539573} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb"},"level":"info","message":"Building connection plan","requestID":"eb2696dee64f089d8501dfdb6e96e1a5"} 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":"0c723ce0-a8dc-40bd-996f-0e3d65b7653c"},{"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":"fb17bcfc-495a-41e5-9682-4cf54e311958"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"d6f2a199-c33a-4239-8bcf-06104d6f54b6"}]},"level":"info","message":"Built pairwise service configurations","requestID":"eb2696dee64f089d8501dfdb6e96e1a5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d3161ca26e3dcf0306b61b715f4a10ed","responseTime":3,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"155af080-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"155af080-50ec-11ef-a432-47ab85bb6d58"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d3161ca26e3dcf0306b61b715f4a10ed"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"155af080-50ec-11ef-a432-47ab85bb6d58","responseTime":1,"status":201,"url":"/rooms"} gateway-1 | {"time_local":"02/Aug/2024:16:27:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/85f9f5b4-74f0-4c55-abc0-318f18547b45? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d3161ca26e3dcf0306b61b715f4a10ed"} device-1 | {"level":"info","message":"GET /devices/85f9f5b4-74f0-4c55-abc0-318f18547b45? 200 13ms","method":"GET","requestID":"d3161ca26e3dcf0306b61b715f4a10ed","responseTime":13,"status":200,"url":"/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/e2307951-c667-45d3-b964-2a0f5f27e4de?id=abfb4a09-a3f1-4138-9476-21a8ef97ca61","ws://localhost/rooms/e2307951-c667-45d3-b964-2a0f5f27e4de?id=931bd905-205a-447d-a0c0-0317746fc526"]},"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"eb2696dee64f089d8501dfdb6e96e1a5"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"155b65b0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1626,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1626,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.005539,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"155b65b0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616037,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"155b65b0-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"3a20914e-7d8a-45e9-8b22-cdce45973f32","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.2725205} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8a114445-e152-4369-9227-6205517e4e4c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.2727613} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"155b65b0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"155b65b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"155b65b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/4788904f-d813-4b3e-8429-2e42e7ed932e'","requestID":"155b65b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/4788904f-d813-4b3e-8429-2e42e7ed932e'","requestID":"155b65b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"155b65b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"155b65b0-50ec-11ef-8434-2f6d198c7397","responseTime":25,"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":"155b65b0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4788904f-d813-4b3e-8429-2e42e7ed932e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4788904f-d813-4b3e-8429-2e42e7ed932e","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"156095d0-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"abfb4a09-a3f1-4138-9476-21a8ef97ca61\" in room \"http://localhost/rooms/e2307951-c667-45d3-b964-2a0f5f27e4de\"","requestID":"156095d0-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"156095d0-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"1560bce0-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"931bd905-205a-447d-a0c0-0317746fc526\" in room \"http://localhost/rooms/e2307951-c667-45d3-b964-2a0f5f27e4de\"","requestID":"1560bce0-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"1560bce0-50ec-11ef-a432-47ab85bb6d58"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"931bd905-205a-447d-a0c0-0317746fc526\" in room \"http://localhost/rooms/e2307951-c667-45d3-b964-2a0f5f27e4de\"","requestID":"1560bce0-50ec-11ef-a432-47ab85bb6d58"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b4606873ea14b6177c055a1926fe00f2","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":"b4606873ea14b6177c055a1926fe00f2","responseTime":2,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"931bd905-205a-447d-a0c0-0317746fc526\" in room \"http://localhost/rooms/e2307951-c667-45d3-b964-2a0f5f27e4de\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"931bd905-205a-447d-a0c0-0317746fc526\" in room \"http://localhost/rooms/e2307951-c667-45d3-b964-2a0f5f27e4de\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"931bd905-205a-447d-a0c0-0317746fc526\" in room \"http://localhost/rooms/e2307951-c667-45d3-b964-2a0f5f27e4de\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"931bd905-205a-447d-a0c0-0317746fc526\" in room \"http://localhost/rooms/e2307951-c667-45d3-b964-2a0f5f27e4de\""} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/4788904f-d813-4b3e-8429-2e42e7ed932e"}}},"level":"info","message":"received a callback","requestID":"b4606873ea14b6177c055a1926fe00f2"} device-1 | {"data":{"peerconnection":"4788904f-d813-4b3e-8429-2e42e7ed932e","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"b4606873ea14b6177c055a1926fe00f2","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27:17 +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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"b4606873ea14b6177c055a1926fe00f2"} device-1 | {"data":{"peerconnection":"4788904f-d813-4b3e-8429-2e42e7ed932e","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"eb2696dee64f089d8501dfdb6e96e1a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"156502a0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1627,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619c7760-69a9-4d8c-adbc-c0725e71bcc5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"13d282a5-d807-4e4b-95c9-321baa809174","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.3264482} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1627,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.417485,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"156502a0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5","object_type":"device","rebac_allow":false,"scope_allow":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":"156502a0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4788904f-d813-4b3e-8429-2e42e7ed932e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4788904f-d813-4b3e-8429-2e42e7ed932e","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c313d94bb4ff95f74d0b5c4c2fd4fc30","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)"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"156502a0-50ec-11ef-8434-2f6d198c7397"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c313d94bb4ff95f74d0b5c4c2fd4fc30","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5/signaling 200 10ms","method":"POST","requestID":"156502a0-50ec-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1566d760-50ec-11ef-8434-2f6d198c7397"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/4788904f-d813-4b3e-8429-2e42e7ed932e"}}},"level":"info","message":"received a callback","requestID":"c313d94bb4ff95f74d0b5c4c2fd4fc30"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1628,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85f9f5b4-74f0-4c55-abc0-318f18547b45","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4425a9c6-4699-477a-977a-d4a1af91c8b1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.3383558} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1628,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.210145,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1566d760-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45","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":"getPeerconnectionsByPeerconnectionId called","requestID":"15679ab0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1566d760-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1629,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1566d760-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/85f9f5b4-74f0-4c55-abc0-318f18547b45/signaling 200 9ms","method":"POST","requestID":"1566d760-50ec-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4788904f-d813-4b3e-8429-2e42e7ed932e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"897c8b87-1ad9-4b32-9b2e-edcf65523da4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.3433392} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1629,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.549555,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4788904f-d813-4b3e-8429-2e42e7ed932e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"15679ab0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/4788904f-d813-4b3e-8429-2e42e7ed932e","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":"15679ab0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"15679ab0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/4788904f-d813-4b3e-8429-2e42e7ed932e 200 7ms","method":"GET","requestID":"15679ab0-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/peerconnections/4788904f-d813-4b3e-8429-2e42e7ed932e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 26ms","method":"POST","requestID":"c313d94bb4ff95f74d0b5c4c2fd4fc30","responseTime":26,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27:17 +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.031","http_referrer":"","http_user_agent":"node-fetch","requestID":"c313d94bb4ff95f74d0b5c4c2fd4fc30"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"156af610-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1630,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619c7760-69a9-4d8c-adbc-c0725e71bcc5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7711c012-3068-4778-809e-117d363e2d88","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.3657577} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1630,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.315744,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"156af610-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5","object_type":"device","rebac_allow":false,"scope_allow":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":"156af610-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"156af610-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5/signaling 200 8ms","method":"POST","requestID":"156af610-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"156c7cb0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1631,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85f9f5b4-74f0-4c55-abc0-318f18547b45","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5dbfff5f-23db-4330-8f3f-67b3d5bfd70f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.376226} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1631,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.261412,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"156c7cb0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45","object_type":"device","rebac_allow":false,"scope_allow":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":"156c7cb0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"156c7cb0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/85f9f5b4-74f0-4c55-abc0-318f18547b45/signaling 200 8ms","method":"POST","requestID":"156c7cb0-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro","level":"info","message":"auth send jwt","requestID":"30a5bd7b9c4f54febad756d6fd6a0eb9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"30a5bd7b9c4f54febad756d6fd6a0eb9","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb","requestID":"30a5bd7b9c4f54febad756d6fd6a0eb9"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1632,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1632,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.889307,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"30a5bd7b9c4f54febad756d6fd6a0eb9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616037,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"30a5bd7b9c4f54febad756d6fd6a0eb9","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb","requestID":"30a5bd7b9c4f54febad756d6fd6a0eb9"} experiment-1 | {"level":"info","message":"GET /experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb 200 11ms","method":"GET","requestID":"30a5bd7b9c4f54febad756d6fd6a0eb9","responseTime":11,"status":200,"url":"/experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb"} gateway-1 | {"time_local":"02/Aug/2024:16:27:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb HTTP/1.1","status": "200","body_bytes_sent":"1293","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"30a5bd7b9c4f54febad756d6fd6a0eb9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro","level":"info","message":"auth send jwt","requestID":"c88469c0ca5dce8e14cfcc7ba0011246"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c88469c0ca5dce8e14cfcc7ba0011246","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb","requestID":"c88469c0ca5dce8e14cfcc7ba0011246"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1633,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1633,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.637917,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"c88469c0ca5dce8e14cfcc7ba0011246","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616037,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c88469c0ca5dce8e14cfcc7ba0011246","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb"},"level":"info","message":"Attempting to finish experiment","requestID":"c88469c0ca5dce8e14cfcc7ba0011246"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"1575cb80-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1634,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1634,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.273325,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4788904f-d813-4b3e-8429-2e42e7ed932e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1575cb80-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/4788904f-d813-4b3e-8429-2e42e7ed932e","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616037,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1575cb80-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"02/Aug/2024:16:27:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/e2307951-c667-45d3-b964-2a0f5f27e4de?id=abfb4a09-a3f1-4138-9476-21a8ef97ca61 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.155","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"5c52d99def24eebdf46ee924ce23a398"} gateway-1 | {"time_local":"02/Aug/2024:16:27:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/e2307951-c667-45d3-b964-2a0f5f27e4de?id=931bd905-205a-447d-a0c0-0317746fc526 HTTP/1.1","status": "101","body_bytes_sent":"916","request_time":"0.155","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"c0ea5ecac7ece28189565b2c0ba8b60d"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"abfb4a09-a3f1-4138-9476-21a8ef97ca61\" in room \"http://localhost/rooms/e2307951-c667-45d3-b964-2a0f5f27e4de\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"abfb4a09-a3f1-4138-9476-21a8ef97ca61\" from room \"http://localhost/rooms/e2307951-c667-45d3-b964-2a0f5f27e4de\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"931bd905-205a-447d-a0c0-0317746fc526\" in room \"http://localhost/rooms/e2307951-c667-45d3-b964-2a0f5f27e4de\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"931bd905-205a-447d-a0c0-0317746fc526\" from room \"http://localhost/rooms/e2307951-c667-45d3-b964-2a0f5f27e4de\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4788904f-d813-4b3e-8429-2e42e7ed932e' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/4788904f-d813-4b3e-8429-2e42e7ed932e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4788904f-d813-4b3e-8429-2e42e7ed932e","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4788904f-d813-4b3e-8429-2e42e7ed932e': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4788904f-d813-4b3e-8429-2e42e7ed932e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"fb7f6913-83e0-4c9a-a202-750c474c6a43","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.4519663} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"09fda03dd8a4348c8ef0e9380404ef17","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":"09fda03dd8a4348c8ef0e9380404ef17","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bb0db6a2-f70d-43c0-ac9a-66d9a07ec31a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.452227} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1545349d427e96789e073eb1e7b7a64d","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":"1545349d427e96789e073eb1e7b7a64d","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"1575cb80-50ec-11ef-8434-2f6d198c7397","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":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/4788904f-d813-4b3e-8429-2e42e7ed932e"}}},"level":"info","message":"received a callback","requestID":"09fda03dd8a4348c8ef0e9380404ef17"} 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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5"},{"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"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/4788904f-d813-4b3e-8429-2e42e7ed932e"}}},"level":"info","message":"received a callback","requestID":"1545349d427e96789e073eb1e7b7a64d"} device-1 | {"data":{"peerconnection":"4788904f-d813-4b3e-8429-2e42e7ed932e","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"1575cb80-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/4788904f-d813-4b3e-8429-2e42e7ed932e 204 38ms","method":"DELETE","requestID":"1575cb80-50ec-11ef-8434-2f6d198c7397","responseTime":38,"status":204,"url":"/peerconnections/4788904f-d813-4b3e-8429-2e42e7ed932e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb"},"level":"info","message":"Successfully finished experiment","requestID":"c88469c0ca5dce8e14cfcc7ba0011246"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"157f6870-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1635,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F619c7760-69a9-4d8c-adbc-c0725e71bcc5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f0c96a74-d6e4-4c93-9392-741c0c95a2fd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.5031939} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1635,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.635943,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"157f6870-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5","object_type":"device","rebac_allow":false,"scope_allow":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":"157f6870-50ec-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F94a4c328-f726-44ba-b636-4e5b57a6ddfb': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F94a4c328-f726-44ba-b636-4e5b57a6ddfb","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"c2ade123-7930-4205-b6a0-77e5d8ae01b7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.5092478} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"157f6870-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0d97da18-2ae8-4d70-8186-7cc38c90c1b4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.5095794} device-1 | {"level":"info","message":"POST /devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5/signaling 200 15ms","method":"POST","requestID":"157f6870-50ec-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"c88469c0ca5dce8e14cfcc7ba0011246","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"15822790-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1636,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F85f9f5b4-74f0-4c55-abc0-318f18547b45","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ab0e3202-d408-43f0-8dd1-fe93765feedf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.5199687} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1636,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.053325,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"15822790-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45","object_type":"device","rebac_allow":false,"scope_allow":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":"15822790-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"15822790-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/85f9f5b4-74f0-4c55-abc0-318f18547b45/signaling 200 14ms","method":"POST","requestID":"15822790-50ec-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/85f9f5b4-74f0-4c55-abc0-318f18547b45/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb","requestID":"c88469c0ca5dce8e14cfcc7ba0011246"} gateway-1 | {"time_local":"02/Aug/2024:16:27:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb 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":"c88469c0ca5dce8e14cfcc7ba0011246"} gateway-1 | {"time_local":"02/Aug/2024:16:27:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2070","request_time":"0.557","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"fbd516a46f4f36319d3404018a403c1f"} gateway-1 | {"time_local":"02/Aug/2024:16:27:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2067","request_time":"0.565","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.0","requestID":"6e440bf8e449db790201004d616df083"} experiment-1 | {"level":"info","message":"DELETE /experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb 204 156ms","method":"DELETE","requestID":"c88469c0ca5dce8e14cfcc7ba0011246","responseTime":156,"status":204,"url":"/experiments/94a4c328-f726-44ba-b636-4e5b57a6ddfb"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 125ms","method":"POST","requestID":"09fda03dd8a4348c8ef0e9380404ef17","responseTime":125,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27:17 +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":"09fda03dd8a4348c8ef0e9380404ef17"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 125ms","method":"POST","requestID":"1545349d427e96789e073eb1e7b7a64d","responseTime":125,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27:17 +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.129","http_referrer":"","http_user_agent":"node-fetch","requestID":"1545349d427e96789e073eb1e7b7a64d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro","level":"info","message":"auth send jwt","requestID":"3d7cda80cb7a9364c12bc6c70eb70511"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3d7cda80cb7a9364c12bc6c70eb70511","responseTime":5,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/619c7760-69a9-4d8c-adbc-c0725e71bcc5' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"3d7cda80cb7a9364c12bc6c70eb70511"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1637,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1637,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.574,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"3d7cda80cb7a9364c12bc6c70eb70511","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616037,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3d7cda80cb7a9364c12bc6c70eb70511","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/85f9f5b4-74f0-4c55-abc0-318f18547b45' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdab217bb-6887-4aec-9652-1df7a4095a7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6cca3e66-3e12-4d71-914b-595988606ead","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.6143944} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3d7cda80cb7a9364c12bc6c70eb70511","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"726abe9f-1224-4f40-806f-3ad4e6d564ed","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.6217544} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"3d7cda80cb7a9364c12bc6c70eb70511","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdab217bb-6887-4aec-9652-1df7a4095a7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"9a6afbf3-079d-4307-bacd-4f111420d607","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.6331358} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6bc5b39a-c9d7-484e-a929-bc71578fe812","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.6332805} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"3d7cda80cb7a9364c12bc6c70eb70511","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdab217bb-6887-4aec-9652-1df7a4095a7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdab217bb-6887-4aec-9652-1df7a4095a7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:17.633079852Z"}]},"request_id":"ee7e0da7-58f9-467b-9a76-496a06308552","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.6389365} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3d7cda80cb7a9364c12bc6c70eb70511","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3d7cda80cb7a9364c12bc6c70eb70511"} gateway-1 | {"time_local":"02/Aug/2024:16:27:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.062","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3d7cda80cb7a9364c12bc6c70eb70511"} device-1 | {"level":"info","message":"POST /devices? 201 55ms","method":"POST","requestID":"3d7cda80cb7a9364c12bc6c70eb70511","responseTime":55,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro","level":"info","message":"auth send jwt","requestID":"5af32487eb06097bcf9f712112d773f7"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5af32487eb06097bcf9f712112d773f7","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5af32487eb06097bcf9f712112d773f7"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1638,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1638,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.812893,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"5af32487eb06097bcf9f712112d773f7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616037,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzN30.93eiNM8-9GQsCmKSBfMSY1Nn4x7Dmvr508PWJM1XCro"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5af32487eb06097bcf9f712112d773f7","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6a2d1ac-8418-43e2-84e4-1f3d532663e5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"145d50cc-4c9d-4881-9613-28978198ff76","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.6641762} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5af32487eb06097bcf9f712112d773f7","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"24579db6-e06a-4bef-97b5-96ba77e3bf04","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.669794} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"5af32487eb06097bcf9f712112d773f7","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6a2d1ac-8418-43e2-84e4-1f3d532663e5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"dfcc10a3-fca2-4999-a968-5b4a9f8828d3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.686574} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"56bddc3e-1705-4cd4-a31d-687f3a6a9147","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.6866965} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"5af32487eb06097bcf9f712112d773f7","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6a2d1ac-8418-43e2-84e4-1f3d532663e5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6a2d1ac-8418-43e2-84e4-1f3d532663e5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:17.686537265Z"}]},"request_id":"e2000d09-779e-4670-b5d2-de4a4251c5c1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616037.6915696} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5af32487eb06097bcf9f712112d773f7","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5af32487eb06097bcf9f712112d773f7"} gateway-1 | {"time_local":"02/Aug/2024:16:27:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5af32487eb06097bcf9f712112d773f7"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"5af32487eb06097bcf9f712112d773f7","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"be910dd88510c4c490d5ef497de79962","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":"be910dd88510c4c490d5ef497de79962","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/dab217bb-6887-4aec-9652-1df7a4095a7e/websocket 200 1ms","method":"OPTIONS","requestID":"be910dd88510c4c490d5ef497de79962","responseTime":1,"status":200,"url":"/devices/dab217bb-6887-4aec-9652-1df7a4095a7e/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:27:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/dab217bb-6887-4aec-9652-1df7a4095a7e/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":"be910dd88510c4c490d5ef497de79962"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0ba3049d1139e8f8d4279c001265ce8f","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":"0ba3049d1139e8f8d4279c001265ce8f","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:27:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5/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":"0ba3049d1139e8f8d4279c001265ce8f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzOX0.EBxmNuJIJ0duSF7nQXmqghbxZ0YVn57FKNeteNvmqcA","level":"info","message":"auth send jwt","requestID":"31073b69c4f13974222a390e87442b72"} device-1 | {"level":"info","message":"OPTIONS /devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5/websocket 200 2ms","method":"OPTIONS","requestID":"0ba3049d1139e8f8d4279c001265ce8f","responseTime":2,"status":200,"url":"/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5/websocket"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"31073b69c4f13974222a390e87442b72","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"31073b69c4f13974222a390e87442b72"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1639,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1639,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.096062,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:19Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzOX0.EBxmNuJIJ0duSF7nQXmqghbxZ0YVn57FKNeteNvmqcA","level":"info","message":"auth send jwt","requestID":"1d722537e0d621dcf0b332bc80c4525a"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"31073b69c4f13974222a390e87442b72","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616039,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzOX0.EBxmNuJIJ0duSF7nQXmqghbxZ0YVn57FKNeteNvmqcA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"31073b69c4f13974222a390e87442b72","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1d722537e0d621dcf0b332bc80c4525a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1d722537e0d621dcf0b332bc80c4525a"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1640,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1640,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.329206,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1d722537e0d621dcf0b332bc80c4525a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616039,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzOX0.EBxmNuJIJ0duSF7nQXmqghbxZ0YVn57FKNeteNvmqcA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1d722537e0d621dcf0b332bc80c4525a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"31073b69c4f13974222a390e87442b72"} device-1 | {"level":"info","message":"POST /devices/dab217bb-6887-4aec-9652-1df7a4095a7e/websocket 200 23ms","method":"POST","requestID":"31073b69c4f13974222a390e87442b72","responseTime":23,"status":200,"url":"/devices/dab217bb-6887-4aec-9652-1df7a4095a7e/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:27:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/dab217bb-6887-4aec-9652-1df7a4095a7e/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":"31073b69c4f13974222a390e87442b72"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1d722537e0d621dcf0b332bc80c4525a"} gateway-1 | {"time_local":"02/Aug/2024:16:27:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.032","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":"1d722537e0d621dcf0b332bc80c4525a"} device-1 | {"level":"info","message":"POST /devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5/websocket 200 25ms","method":"POST","requestID":"1d722537e0d621dcf0b332bc80c4525a","responseTime":25,"status":200,"url":"/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"74cdf71385e0c77a68727a05e7b0ce47","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":"74cdf71385e0c77a68727a05e7b0ce47","responseTime":0,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:27:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/dab217bb-6887-4aec-9652-1df7a4095a7e? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"74cdf71385e0c77a68727a05e7b0ce47"} device-1 | {"level":"info","message":"OPTIONS /devices/dab217bb-6887-4aec-9652-1df7a4095a7e? 200 1ms","method":"OPTIONS","requestID":"74cdf71385e0c77a68727a05e7b0ce47","responseTime":1,"status":200,"url":"/devices/dab217bb-6887-4aec-9652-1df7a4095a7e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzOX0.EBxmNuJIJ0duSF7nQXmqghbxZ0YVn57FKNeteNvmqcA","level":"info","message":"auth send jwt","requestID":"be875b3515dc1e69b84a4df8f7c90814"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"be875b3515dc1e69b84a4df8f7c90814","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"be875b3515dc1e69b84a4df8f7c90814"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b0873230a45df99d8bab2c61b698b74a","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 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1641,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:19Z"} gateway-1 | {"time_local":"02/Aug/2024:16:27:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"b0873230a45df99d8bab2c61b698b74a"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b0873230a45df99d8bab2c61b698b74a","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5? 200 1ms","method":"OPTIONS","requestID":"b0873230a45df99d8bab2c61b698b74a","responseTime":1,"status":200,"url":"/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5?"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1641,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.100447,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"be875b3515dc1e69b84a4df8f7c90814","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616039,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzOX0.EBxmNuJIJ0duSF7nQXmqghbxZ0YVn57FKNeteNvmqcA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"be875b3515dc1e69b84a4df8f7c90814","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdab217bb-6887-4aec-9652-1df7a4095a7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdab217bb-6887-4aec-9652-1df7a4095a7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:17.633079852Z"}]},"request_id":"2c0d5b8b-383a-48b0-8038-949da83c09e8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616039.7436752} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"be875b3515dc1e69b84a4df8f7c90814","responseTime":3,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzOX0.EBxmNuJIJ0duSF7nQXmqghbxZ0YVn57FKNeteNvmqcA","level":"info","message":"auth send jwt","requestID":"41ca3881770841f5e96dfbcde8930c90"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"41ca3881770841f5e96dfbcde8930c90","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"41ca3881770841f5e96dfbcde8930c90"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2c29f667-5f28-44a3-a50e-73e17a8f7694","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616039.7509847} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"be875b3515dc1e69b84a4df8f7c90814","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1642,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1642,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.840253,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"41ca3881770841f5e96dfbcde8930c90","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616039,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzOX0.EBxmNuJIJ0duSF7nQXmqghbxZ0YVn57FKNeteNvmqcA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"41ca3881770841f5e96dfbcde8930c90","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdab217bb-6887-4aec-9652-1df7a4095a7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdab217bb-6887-4aec-9652-1df7a4095a7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:17.633079852Z"}]},"request_id":"b1576bda-b836-4226-830a-ab25558816cb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616039.765546} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"be875b3515dc1e69b84a4df8f7c90814","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6a2d1ac-8418-43e2-84e4-1f3d532663e5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6a2d1ac-8418-43e2-84e4-1f3d532663e5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:17.686537265Z"}]},"request_id":"40ed1c06-f0ff-4778-bb42-639c511e63d6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616039.7667227} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"be875b3515dc1e69b84a4df8f7c90814"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"41ca3881770841f5e96dfbcde8930c90","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"PATCH /devices/dab217bb-6887-4aec-9652-1df7a4095a7e? 200 35ms","method":"PATCH","requestID":"be875b3515dc1e69b84a4df8f7c90814","responseTime":35,"status":200,"url":"/devices/dab217bb-6887-4aec-9652-1df7a4095a7e?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/dab217bb-6887-4aec-9652-1df7a4095a7e? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"be875b3515dc1e69b84a4df8f7c90814"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f323adda-ee79-4c88-a660-460c1a5b3bdc","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616039.771743} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"41ca3881770841f5e96dfbcde8930c90","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6a2d1ac-8418-43e2-84e4-1f3d532663e5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6a2d1ac-8418-43e2-84e4-1f3d532663e5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:17.686537265Z"}]},"request_id":"85982901-7e68-42b5-b790-d50d24463386","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616039.7803645} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"41ca3881770841f5e96dfbcde8930c90","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"41ca3881770841f5e96dfbcde8930c90"} gateway-1 | {"time_local":"02/Aug/2024:16:27:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.041","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":"41ca3881770841f5e96dfbcde8930c90"} device-1 | {"level":"info","message":"PATCH /devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5? 200 32ms","method":"PATCH","requestID":"41ca3881770841f5e96dfbcde8930c90","responseTime":32,"status":200,"url":"/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzOX0.EBxmNuJIJ0duSF7nQXmqghbxZ0YVn57FKNeteNvmqcA","level":"info","message":"auth send jwt","requestID":"6f15e03fec82258946240f66a8cc9c12"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6f15e03fec82258946240f66a8cc9c12","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6f15e03fec82258946240f66a8cc9c12"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1643,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1643,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.940137,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"6f15e03fec82258946240f66a8cc9c12","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616039,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzOX0.EBxmNuJIJ0duSF7nQXmqghbxZ0YVn57FKNeteNvmqcA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6f15e03fec82258946240f66a8cc9c12","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdab217bb-6887-4aec-9652-1df7a4095a7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdab217bb-6887-4aec-9652-1df7a4095a7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:17.633079852Z"}]},"request_id":"b3ebd128-4d70-45d2-a642-537e8435ea88","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616039.798764} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6f15e03fec82258946240f66a8cc9c12","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6f15e03fec82258946240f66a8cc9c12"} device-1 | {"level":"info","message":"GET /devices/dab217bb-6887-4aec-9652-1df7a4095a7e? 200 11ms","method":"GET","requestID":"6f15e03fec82258946240f66a8cc9c12","responseTime":11,"status":200,"url":"/devices/dab217bb-6887-4aec-9652-1df7a4095a7e?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/dab217bb-6887-4aec-9652-1df7a4095a7e? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6f15e03fec82258946240f66a8cc9c12"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzOX0.EBxmNuJIJ0duSF7nQXmqghbxZ0YVn57FKNeteNvmqcA","level":"info","message":"auth send jwt","requestID":"f71756eff0a9d605c6d75c411ea3b718"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f71756eff0a9d605c6d75c411ea3b718","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f71756eff0a9d605c6d75c411ea3b718"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1644,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1644,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.597822,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"f71756eff0a9d605c6d75c411ea3b718","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616039,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzOX0.EBxmNuJIJ0duSF7nQXmqghbxZ0YVn57FKNeteNvmqcA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f71756eff0a9d605c6d75c411ea3b718","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6a2d1ac-8418-43e2-84e4-1f3d532663e5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6a2d1ac-8418-43e2-84e4-1f3d532663e5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:17.686537265Z"}]},"request_id":"9fb7b3f1-0699-47cd-91c7-7fde973c10b6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616039.8139677} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f71756eff0a9d605c6d75c411ea3b718","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f71756eff0a9d605c6d75c411ea3b718"} device-1 | {"level":"info","message":"GET /devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5? 200 10ms","method":"GET","requestID":"f71756eff0a9d605c6d75c411ea3b718","responseTime":10,"status":200,"url":"/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f71756eff0a9d605c6d75c411ea3b718"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzOX0.EBxmNuJIJ0duSF7nQXmqghbxZ0YVn57FKNeteNvmqcA","level":"info","message":"auth send jwt","requestID":"0ca406104479daceeba1d33b2ceaf565"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0ca406104479daceeba1d33b2ceaf565","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"0ca406104479daceeba1d33b2ceaf565"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1645,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1645,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.887581,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0ca406104479daceeba1d33b2ceaf565","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616039,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzOX0.EBxmNuJIJ0duSF7nQXmqghbxZ0YVn57FKNeteNvmqcA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0ca406104479daceeba1d33b2ceaf565","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548"},"level":"info","message":"Attempting to run experiment","requestID":"0ca406104479daceeba1d33b2ceaf565"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548"},"level":"info","message":"Attempting to book experiment","requestID":"0ca406104479daceeba1d33b2ceaf565"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548"},"level":"info","message":"Successfully booked experiment","requestID":"0ca406104479daceeba1d33b2ceaf565"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"16e89560-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"16e8e380-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1646,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1646,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.217913,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1647,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"16e89560-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616039,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzOX0.EBxmNuJIJ0duSF7nQXmqghbxZ0YVn57FKNeteNvmqcA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"16e89560-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1647,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.830313,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"16e8e380-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616039,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzOX0.EBxmNuJIJ0duSF7nQXmqghbxZ0YVn57FKNeteNvmqcA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"16e8e380-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdab217bb-6887-4aec-9652-1df7a4095a7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdab217bb-6887-4aec-9652-1df7a4095a7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:17.633079852Z"}]},"request_id":"5a487ee2-0971-4ca1-91ea-9faba312ea0f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616039.873188} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"16e89560-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6a2d1ac-8418-43e2-84e4-1f3d532663e5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6a2d1ac-8418-43e2-84e4-1f3d532663e5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:17.686537265Z"}]},"request_id":"a3827a17-7c41-4489-8134-13261d248718","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616039.8747222} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"16e8e380-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"16e89560-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/dab217bb-6887-4aec-9652-1df7a4095a7e? 200 19ms","method":"GET","requestID":"16e89560-50ec-11ef-8434-2f6d198c7397","responseTime":19,"status":200,"url":"/devices/dab217bb-6887-4aec-9652-1df7a4095a7e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"16e8e380-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5? 200 18ms","method":"GET","requestID":"16e8e380-50ec-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548"},"level":"info","message":"Setting up experiment","requestID":"0ca406104479daceeba1d33b2ceaf565"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"0ca406104479daceeba1d33b2ceaf565"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548"},"level":"info","message":"Successfully locked booking for experiment","requestID":"0ca406104479daceeba1d33b2ceaf565"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"0ca406104479daceeba1d33b2ceaf565"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"0ca406104479daceeba1d33b2ceaf565"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548"},"level":"info","message":"Attempting to update booking for experiment","requestID":"0ca406104479daceeba1d33b2ceaf565"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548"},"level":"info","message":"Successfully updated booking for experiment","requestID":"0ca406104479daceeba1d33b2ceaf565"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548"},"level":"info","message":"Successfully set up experiment","requestID":"0ca406104479daceeba1d33b2ceaf565"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"16f2ce90-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"16f2f5a0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"16f343c0-50ec-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548"},"level":"info","message":"Successfully running experiment","requestID":"0ca406104479daceeba1d33b2ceaf565"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1648,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1648,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.685768,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1649,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1649,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.457613,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"16f2ce90-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616039,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzOX0.EBxmNuJIJ0duSF7nQXmqghbxZ0YVn57FKNeteNvmqcA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"16f2ce90-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"16f2f5a0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616039,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzOX0.EBxmNuJIJ0duSF7nQXmqghbxZ0YVn57FKNeteNvmqcA"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"16f2f5a0-50ec-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35784","level":"info","msg":"Received request.","req_id":1650,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdab217bb-6887-4aec-9652-1df7a4095a7e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b2ae402e-a91c-40b4-ace0-f82926519625","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616039.9420493} authorization-1 | {"client_addr":"127.0.0.1:35784","level":"info","msg":"Sent response.","req_id":1650,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.839381,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"16f343c0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e","object_type":"device","rebac_allow":false,"scope_allow":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":"16f343c0-50ec-11ef-8434-2f6d198c7397","responseTime":14,"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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdab217bb-6887-4aec-9652-1df7a4095a7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdab217bb-6887-4aec-9652-1df7a4095a7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:17.633079852Z"}]},"request_id":"147b54c7-4ec2-4b25-a617-77f3ae00379f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616039.9466197} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6a2d1ac-8418-43e2-84e4-1f3d532663e5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6a2d1ac-8418-43e2-84e4-1f3d532663e5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:17.686537265Z"}]},"request_id":"e044efbb-d76f-4581-b20e-7c79c7aaaa75","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616039.9487991} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"16f2ce90-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"16f2f5a0-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"16f343c0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/dab217bb-6887-4aec-9652-1df7a4095a7e/signaling 200 26ms","method":"POST","requestID":"16f343c0-50ec-11ef-8434-2f6d198c7397","responseTime":26,"status":200,"url":"/devices/dab217bb-6887-4aec-9652-1df7a4095a7e/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"16f2ce90-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/dab217bb-6887-4aec-9652-1df7a4095a7e? 200 34ms","method":"GET","requestID":"16f2ce90-50ec-11ef-8434-2f6d198c7397","responseTime":34,"status":200,"url":"/devices/dab217bb-6887-4aec-9652-1df7a4095a7e?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"16f825c0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2d34a0b9-0851-4ce3-ba99-3d21ef7f0548#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2d34a0b9-0851-4ce3-ba99-3d21ef7f0548","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"71612a92-1109-4060-9043-7f226ac9f323","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616039.96481} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"16f2f5a0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f825b47c-29cc-41cc-bf2e-4189f5707254","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616039.9655836} device-1 | {"level":"info","message":"GET /devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5? 200 37ms","method":"GET","requestID":"16f2f5a0-50ec-11ef-8434-2f6d198c7397","responseTime":37,"status":200,"url":"/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 29ms","method":"POST","requestID":"0ca406104479daceeba1d33b2ceaf565","responseTime":29,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1651,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:19Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"16f93730-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6a2d1ac-8418-43e2-84e4-1f3d532663e5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1341491e-5c70-46c4-b5ed-3b0ffd36147c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616039.9735413} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1651,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.507903,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1652,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"16f825c0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5","object_type":"device","rebac_allow":false,"scope_allow":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":"16f825c0-50ec-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"0ca406104479daceeba1d33b2ceaf565"} experiment-1 | {"level":"info","message":"POST /experiments? 201 158ms","method":"POST","requestID":"0ca406104479daceeba1d33b2ceaf565","responseTime":158,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"808","request_time":"0.162","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0ca406104479daceeba1d33b2ceaf565"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"16f825c0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5/signaling 200 20ms","method":"POST","requestID":"16f825c0-50ec-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5/signaling"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdab217bb-6887-4aec-9652-1df7a4095a7e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"48c1a0e3-c269-4d3f-b8fc-3fa111eedefe","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616039.9800546} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1652,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.141423,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"16f93730-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e","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.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzOX0.EBxmNuJIJ0duSF7nQXmqghbxZ0YVn57FKNeteNvmqcA","level":"info","message":"auth send jwt","requestID":"cbd939d67dc8ec746973f20eb3b6b698"} authorization-1 | {"level":"info","message":"POST /authorize 200 15ms","method":"POST","requestID":"16f93730-50ec-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cbd939d67dc8ec746973f20eb3b6b698","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cbd939d67dc8ec746973f20eb3b6b698"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"16f93730-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/dab217bb-6887-4aec-9652-1df7a4095a7e/signaling 200 22ms","method":"POST","requestID":"16f93730-50ec-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/dab217bb-6887-4aec-9652-1df7a4095a7e/signaling"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1653,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1653,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.128948,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"cbd939d67dc8ec746973f20eb3b6b698","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616039,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzOX0.EBxmNuJIJ0duSF7nQXmqghbxZ0YVn57FKNeteNvmqcA"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"16fd07c0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cbd939d67dc8ec746973f20eb3b6b698","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1654,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6a2d1ac-8418-43e2-84e4-1f3d532663e5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3506ad97-6110-4030-8899-94a863a0d8f8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.0020885} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1654,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.886205,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"16fd07c0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5","object_type":"device","rebac_allow":false,"scope_allow":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":"16fd07c0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdab217bb-6887-4aec-9652-1df7a4095a7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdab217bb-6887-4aec-9652-1df7a4095a7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:17.633079852Z"}]},"request_id":"aa821021-fceb-4222-b393-be8646abec54","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.0032763} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"cbd939d67dc8ec746973f20eb3b6b698","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"16fd07c0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5/signaling 200 13ms","method":"POST","requestID":"16fd07c0-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cbd939d67dc8ec746973f20eb3b6b698"} device-1 | {"level":"info","message":"GET /devices/dab217bb-6887-4aec-9652-1df7a4095a7e? 200 20ms","method":"GET","requestID":"cbd939d67dc8ec746973f20eb3b6b698","responseTime":20,"status":200,"url":"/devices/dab217bb-6887-4aec-9652-1df7a4095a7e?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"0ca406104479daceeba1d33b2ceaf565"} gateway-1 | {"time_local":"02/Aug/2024:16:27:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/dab217bb-6887-4aec-9652-1df7a4095a7e? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cbd939d67dc8ec746973f20eb3b6b698"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"16ff78c0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"16ff9fd0-50ec-11ef-8434-2f6d198c7397"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0MH0.7ljGpN13eanujM_9dbsEHIbsOqa-KkttgtTAAT73R3I","level":"info","message":"auth send jwt","requestID":"eba613345aa3d487d8c1ecfbf684f0a0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"eba613345aa3d487d8c1ecfbf684f0a0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"eba613345aa3d487d8c1ecfbf684f0a0"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1655,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1655,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.798177,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1656,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1656,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.808803,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"16ff78c0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616039,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzOX0.EBxmNuJIJ0duSF7nQXmqghbxZ0YVn57FKNeteNvmqcA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"16ff78c0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"16ff9fd0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616039,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzOX0.EBxmNuJIJ0duSF7nQXmqghbxZ0YVn57FKNeteNvmqcA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"16ff9fd0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1657,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1657,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.721751,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"eba613345aa3d487d8c1ecfbf684f0a0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616040,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0MH0.7ljGpN13eanujM_9dbsEHIbsOqa-KkttgtTAAT73R3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"eba613345aa3d487d8c1ecfbf684f0a0","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdab217bb-6887-4aec-9652-1df7a4095a7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdab217bb-6887-4aec-9652-1df7a4095a7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:17.633079852Z"}]},"request_id":"178a8528-2054-4f7c-af99-848c18b2d91b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.0214267} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6a2d1ac-8418-43e2-84e4-1f3d532663e5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6a2d1ac-8418-43e2-84e4-1f3d532663e5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:17.686537265Z"}]},"request_id":"e1648b01-0a16-460d-9684-fcc4a6431fe7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.0221522} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"16ff78c0-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"16ff9fd0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6a2d1ac-8418-43e2-84e4-1f3d532663e5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6a2d1ac-8418-43e2-84e4-1f3d532663e5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:17.686537265Z"}]},"request_id":"098b16ba-94c2-4517-8e1e-ebcd549f0353","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.025062} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"eba613345aa3d487d8c1ecfbf684f0a0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"16ff78c0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/dab217bb-6887-4aec-9652-1df7a4095a7e? 200 15ms","method":"GET","requestID":"16ff78c0-50ec-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/dab217bb-6887-4aec-9652-1df7a4095a7e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"16ff9fd0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5? 200 15ms","method":"GET","requestID":"16ff9fd0-50ec-11ef-8434-2f6d198c7397","responseTime":15,"status":200,"url":"/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548"},"level":"info","message":"Building connection plan","requestID":"0ca406104479daceeba1d33b2ceaf565"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"e06099d4-a0d4-4207-95f8-6f52130e38cf"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"9ba60eb6-65e2-4ae4-a8d8-057e2df6a53c"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"d4600cea-0256-4d27-b70d-8c1cef529943"}]},"level":"info","message":"Built pairwise service configurations","requestID":"0ca406104479daceeba1d33b2ceaf565"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"eba613345aa3d487d8c1ecfbf684f0a0"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"0ca406104479daceeba1d33b2ceaf565"} gateway-1 | {"time_local":"02/Aug/2024:16:27:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"eba613345aa3d487d8c1ecfbf684f0a0"} device-1 | {"level":"info","message":"GET /devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5? 200 13ms","method":"GET","requestID":"eba613345aa3d487d8c1ecfbf684f0a0","responseTime":13,"status":200,"url":"/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"170237e0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1658,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1658,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.720941,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"170237e0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616039,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjAzOX0.EBxmNuJIJ0duSF7nQXmqghbxZ0YVn57FKNeteNvmqcA"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"170237e0-50ec-11ef-8434-2f6d198c7397","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"afb4167a-fb6c-4e69-908c-964654681e00","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.041968} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0e0bbff0-0b0f-456d-bf76-13680d8f7c5b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.0423024} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"170237e0-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"170237e0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"170237e0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/d2abd6a2-cac2-41d1-b832-0be8f6a63176'","requestID":"170237e0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/d2abd6a2-cac2-41d1-b832-0be8f6a63176'","requestID":"170237e0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"170237e0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"170237e0-50ec-11ef-8434-2f6d198c7397","responseTime":25,"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":"170237e0-50ec-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"0ca406104479daceeba1d33b2ceaf565"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"170a0010-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1659,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdab217bb-6887-4aec-9652-1df7a4095a7e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1a85b702-16bc-4760-acfd-4924524ad2c6","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.0852125} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1659,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.285357,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"170a0010-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e","object_type":"device","rebac_allow":false,"scope_allow":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":"170a0010-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"170a0010-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/dab217bb-6887-4aec-9652-1df7a4095a7e/signaling 200 7ms","method":"POST","requestID":"170a0010-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/devices/dab217bb-6887-4aec-9652-1df7a4095a7e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"170b5fa0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1660,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6a2d1ac-8418-43e2-84e4-1f3d532663e5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"475d883f-2264-483f-a621-36a8a46ddede","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.0943434} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1660,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.924075,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"170b5fa0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5","object_type":"device","rebac_allow":false,"scope_allow":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":"170b5fa0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"dab217bb-6887-4aec-9652-1df7a4095a7e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"dab217bb-6887-4aec-9652-1df7a4095a7e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"170b5fa0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5/signaling 200 10ms","method":"POST","requestID":"170b5fa0-50ec-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5/signaling"} device-1 | {"device":"c6a2d1ac-8418-43e2-84e4-1f3d532663e5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"c6a2d1ac-8418-43e2-84e4-1f3d532663e5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 7914340007320584821 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:L+eJ\r\na=ice-pwd:xacUDXjM57nzhl202qeIiHbV\r\na=ice-options:trickle\r\na=fingerprint:sha-256 6C:F5:44:59:4A:C2:DE:71:8A:A4:1A:B1:76:06:FC:1F:D4:3C:9F:32:D2:0C:A8:BB:AD:85:B7:5E:F3:31:8F:0E\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"c6a2d1ac-8418-43e2-84e4-1f3d532663e5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 8095726872545776850 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:w4iE\r\na=ice-pwd:QVAeLx8ECjO0AFN5cRIhIWZE\r\na=ice-options:trickle\r\na=fingerprint:sha-256 49:87:F2:9A:72:4D:7F:53:9C:97:72:3D:BF:3C:A6:54:84:B1:CA:7D:B3:C0:24:79:73:B1:EE:4F:E2:40:69:E9\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"dab217bb-6887-4aec-9652-1df7a4095a7e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3130249579 1 udp 2113937151 32cd3552-facc-4287-9fea-5e01b24caeaa.local 56369 typ host generation 0 ufrag w4iE network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"dab217bb-6887-4aec-9652-1df7a4095a7e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3214663219 1 udp 1677729535 141.24.211.56 56369 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag w4iE network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"dab217bb-6887-4aec-9652-1df7a4095a7e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e'"} device-1 | {"content":{"candidate":"candidate:3158290412 1 udp 2113937151 ae53ae6a-5231-48f7-907b-dcb3c5699a25.local 56045 typ host generation 0 ufrag L+eJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c6a2d1ac-8418-43e2-84e4-1f3d532663e5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3026707499 1 udp 1677729535 141.24.211.56 56045 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag L+eJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c6a2d1ac-8418-43e2-84e4-1f3d532663e5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5'"} device-1 | {"device":"c6a2d1ac-8418-43e2-84e4-1f3d532663e5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d2abd6a2-cac2-41d1-b832-0be8f6a63176' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d2abd6a2-cac2-41d1-b832-0be8f6a63176","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"dab217bb-6887-4aec-9652-1df7a4095a7e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"c6a2d1ac-8418-43e2-84e4-1f3d532663e5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c1edc1afde662573098beb471ecc56f1","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":"c1edc1afde662573098beb471ecc56f1","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"dab217bb-6887-4aec-9652-1df7a4095a7e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/d2abd6a2-cac2-41d1-b832-0be8f6a63176"}}},"level":"info","message":"received a callback","requestID":"c1edc1afde662573098beb471ecc56f1"} device-1 | {"device":"c6a2d1ac-8418-43e2-84e4-1f3d532663e5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"dab217bb-6887-4aec-9652-1df7a4095a7e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"c1edc1afde662573098beb471ecc56f1","responseTime":4,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27: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.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"c1edc1afde662573098beb471ecc56f1"} device-1 | {"data":{"peerconnection":"d2abd6a2-cac2-41d1-b832-0be8f6a63176","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"dab217bb-6887-4aec-9652-1df7a4095a7e","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"d2abd6a2-cac2-41d1-b832-0be8f6a63176","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/d2abd6a2-cac2-41d1-b832-0be8f6a63176' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d2abd6a2-cac2-41d1-b832-0be8f6a63176","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f9592d7b4c484483819f0d98bf308a5c","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":"f9592d7b4c484483819f0d98bf308a5c","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/d2abd6a2-cac2-41d1-b832-0be8f6a63176"}}},"level":"info","message":"received a callback","requestID":"f9592d7b4c484483819f0d98bf308a5c"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"17194250-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1661,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd2abd6a2-cac2-41d1-b832-0be8f6a63176","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"85c92fa9-c4c1-43cd-a723-b4e61bd6c7e2","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.1850998} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1661,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":1.986496,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d2abd6a2-cac2-41d1-b832-0be8f6a63176","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"17194250-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/d2abd6a2-cac2-41d1-b832-0be8f6a63176","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":"17194250-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"17194250-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/d2abd6a2-cac2-41d1-b832-0be8f6a63176 200 7ms","method":"GET","requestID":"17194250-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/peerconnections/d2abd6a2-cac2-41d1-b832-0be8f6a63176"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 28ms","method":"POST","requestID":"f9592d7b4c484483819f0d98bf308a5c","responseTime":28,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27: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.030","http_referrer":"","http_user_agent":"node-fetch","requestID":"f9592d7b4c484483819f0d98bf308a5c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"171cebd0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1662,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdab217bb-6887-4aec-9652-1df7a4095a7e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5a2d9069-b27d-40b4-89ca-26c3f0303ca7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.2097664} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1662,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.092427,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"171cebd0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e","object_type":"device","rebac_allow":false,"scope_allow":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":"171cebd0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"171cebd0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/dab217bb-6887-4aec-9652-1df7a4095a7e/signaling 200 7ms","method":"POST","requestID":"171cebd0-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/devices/dab217bb-6887-4aec-9652-1df7a4095a7e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"171e4b60-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1663,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6a2d1ac-8418-43e2-84e4-1f3d532663e5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4d2dc3f9-fc92-40fd-9f62-cd1972b9798c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.2184274} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1663,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.156827,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"171e4b60-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5","object_type":"device","rebac_allow":false,"scope_allow":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":"171e4b60-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"171e4b60-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5/signaling 200 7ms","method":"POST","requestID":"171e4b60-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0MH0.7ljGpN13eanujM_9dbsEHIbsOqa-KkttgtTAAT73R3I","level":"info","message":"auth send jwt","requestID":"0d0c523663937edb46b8b1a6a540a44e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0d0c523663937edb46b8b1a6a540a44e","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548","requestID":"0d0c523663937edb46b8b1a6a540a44e"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1664,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1664,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.721245,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"0d0c523663937edb46b8b1a6a540a44e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616040,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0MH0.7ljGpN13eanujM_9dbsEHIbsOqa-KkttgtTAAT73R3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0d0c523663937edb46b8b1a6a540a44e","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548","requestID":"0d0c523663937edb46b8b1a6a540a44e"} gateway-1 | {"time_local":"02/Aug/2024:16:27:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548 HTTP/1.1","status": "200","body_bytes_sent":"881","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0d0c523663937edb46b8b1a6a540a44e"} experiment-1 | {"level":"info","message":"GET /experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548 200 8ms","method":"GET","requestID":"0d0c523663937edb46b8b1a6a540a44e","responseTime":8,"status":200,"url":"/experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0MH0.7ljGpN13eanujM_9dbsEHIbsOqa-KkttgtTAAT73R3I","level":"info","message":"auth send jwt","requestID":"3a6cae1a90f0076995f70bafce8a300a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3a6cae1a90f0076995f70bafce8a300a","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548","requestID":"3a6cae1a90f0076995f70bafce8a300a"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1665,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1665,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.678537,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"3a6cae1a90f0076995f70bafce8a300a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616040,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0MH0.7ljGpN13eanujM_9dbsEHIbsOqa-KkttgtTAAT73R3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3a6cae1a90f0076995f70bafce8a300a","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548"},"level":"info","message":"Attempting to finish experiment","requestID":"3a6cae1a90f0076995f70bafce8a300a"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"172a0b30-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1666,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1666,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.138206,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d2abd6a2-cac2-41d1-b832-0be8f6a63176","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"172a0b30-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/d2abd6a2-cac2-41d1-b832-0be8f6a63176","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616040,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0MH0.7ljGpN13eanujM_9dbsEHIbsOqa-KkttgtTAAT73R3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"172a0b30-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/d2abd6a2-cac2-41d1-b832-0be8f6a63176","device":"dab217bb-6887-4aec-9652-1df7a4095a7e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/d2abd6a2-cac2-41d1-b832-0be8f6a63176","device":"c6a2d1ac-8418-43e2-84e4-1f3d532663e5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d2abd6a2-cac2-41d1-b832-0be8f6a63176' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/d2abd6a2-cac2-41d1-b832-0be8f6a63176' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d2abd6a2-cac2-41d1-b832-0be8f6a63176","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"813c55895d28cd573d6be5615619f9ba","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":"813c55895d28cd573d6be5615619f9ba","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dfe30be3800be5c133b2f50105d249ee","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":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d2abd6a2-cac2-41d1-b832-0be8f6a63176"}}},"level":"info","message":"received a callback","requestID":"813c55895d28cd573d6be5615619f9ba"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"dfe30be3800be5c133b2f50105d249ee","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd2abd6a2-cac2-41d1-b832-0be8f6a63176': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd2abd6a2-cac2-41d1-b832-0be8f6a63176","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"caf8a3c2-1451-421e-a00c-fed299499aca","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.3089063} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e9fe5537-336a-436b-aac1-d741668346b7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.3090987} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d2abd6a2-cac2-41d1-b832-0be8f6a63176"}}},"level":"info","message":"received a callback","requestID":"dfe30be3800be5c133b2f50105d249ee"} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"172a0b30-50ec-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"d2abd6a2-cac2-41d1-b832-0be8f6a63176","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"172a0b30-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/d2abd6a2-cac2-41d1-b832-0be8f6a63176 204 35ms","method":"DELETE","requestID":"172a0b30-50ec-11ef-8434-2f6d198c7397","responseTime":35,"status":204,"url":"/peerconnections/d2abd6a2-cac2-41d1-b832-0be8f6a63176"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548"},"level":"info","message":"Successfully finished experiment","requestID":"3a6cae1a90f0076995f70bafce8a300a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1732e4d0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1667,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdab217bb-6887-4aec-9652-1df7a4095a7e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"035ea782-1453-4d1b-b977-5c4524ec8e25","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.3562424} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1667,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.86678,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1732e4d0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dab217bb-6887-4aec-9652-1df7a4095a7e","object_type":"device","rebac_allow":false,"scope_allow":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":"1732e4d0-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1732e4d0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/dab217bb-6887-4aec-9652-1df7a4095a7e/signaling 200 11ms","method":"POST","requestID":"1732e4d0-50ec-11ef-8434-2f6d198c7397","responseTime":11,"status":200,"url":"/devices/dab217bb-6887-4aec-9652-1df7a4095a7e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1734e0a0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2d34a0b9-0851-4ce3-ba99-3d21ef7f0548': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2d34a0b9-0851-4ce3-ba99-3d21ef7f0548","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"e87ae082-59f0-4d19-b927-5d7354d9f385","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.362934} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1cdf7737-50ea-4da9-b5d2-0bc85d19eba5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.3635976} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"3a6cae1a90f0076995f70bafce8a300a","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1668,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6a2d1ac-8418-43e2-84e4-1f3d532663e5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a48af50f-c40a-4fee-a794-f0ee6e823b01","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.367002} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1668,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.067821,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1734e0a0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5","object_type":"device","rebac_allow":false,"scope_allow":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":"1734e0a0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1734e0a0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5/signaling 200 10ms","method":"POST","requestID":"1734e0a0-50ec-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548","requestID":"3a6cae1a90f0076995f70bafce8a300a"} gateway-1 | {"time_local":"02/Aug/2024:16:27:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548 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":"3a6cae1a90f0076995f70bafce8a300a"} experiment-1 | {"level":"info","message":"DELETE /experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548 204 156ms","method":"DELETE","requestID":"3a6cae1a90f0076995f70bafce8a300a","responseTime":156,"status":204,"url":"/experiments/2d34a0b9-0851-4ce3-ba99-3d21ef7f0548"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"813c55895d28cd573d6be5615619f9ba","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27: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.130","http_referrer":"","http_user_agent":"node-fetch","requestID":"813c55895d28cd573d6be5615619f9ba"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"dfe30be3800be5c133b2f50105d249ee","responseTime":126,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0MH0.7ljGpN13eanujM_9dbsEHIbsOqa-KkttgtTAAT73R3I","level":"info","message":"auth send jwt","requestID":"595114d7d132f9ebb626665e79467ac9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"595114d7d132f9ebb626665e79467ac9","responseTime":3,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:27: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.129","http_referrer":"","http_user_agent":"node-fetch","requestID":"dfe30be3800be5c133b2f50105d249ee"} gateway-1 | {"time_local":"02/Aug/2024:16:27:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3079","request_time":"0.735","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":"712395dcbd6b37d753d1293dd4488cca"} gateway-1 | {"time_local":"02/Aug/2024:16:27:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3079","request_time":"0.748","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":"b317ceb9f71535225aa4946c25e437fc"} device-1 | {"level":"info","message":"postDevices called","requestID":"595114d7d132f9ebb626665e79467ac9"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1669,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1669,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.790233,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"595114d7d132f9ebb626665e79467ac9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616040,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0MH0.7ljGpN13eanujM_9dbsEHIbsOqa-KkttgtTAAT73R3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"595114d7d132f9ebb626665e79467ac9","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/dab217bb-6887-4aec-9652-1df7a4095a7e' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/c6a2d1ac-8418-43e2-84e4-1f3d532663e5' 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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9af721be-bb8d-4d3d-b36c-147cdcadd176","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6d38ffab-a9ea-49d4-99d0-61a59c28c1b1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.4608605} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"595114d7d132f9ebb626665e79467ac9","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b6e9b550-6744-4ea0-9e0d-f77d2d54f720","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.4652953} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"595114d7d132f9ebb626665e79467ac9","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9af721be-bb8d-4d3d-b36c-147cdcadd176","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"e312ce36-00a6-4d6d-ab9e-b8bc91205aa7","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.475499} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ed6c510e-8855-4f32-95b6-560d740fe70c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.4755936} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"595114d7d132f9ebb626665e79467ac9","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9af721be-bb8d-4d3d-b36c-147cdcadd176","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9af721be-bb8d-4d3d-b36c-147cdcadd176","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:20.475454416Z"}]},"request_id":"0303b0bc-9f6f-446b-a981-bd8d38249f85","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.4796162} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"595114d7d132f9ebb626665e79467ac9","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"595114d7d132f9ebb626665e79467ac9"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"595114d7d132f9ebb626665e79467ac9","responseTime":39,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"434","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"595114d7d132f9ebb626665e79467ac9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0MH0.7ljGpN13eanujM_9dbsEHIbsOqa-KkttgtTAAT73R3I","level":"info","message":"auth send jwt","requestID":"4ab65b38a22c361586af5d1d2a29a0d2"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4ab65b38a22c361586af5d1d2a29a0d2","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4ab65b38a22c361586af5d1d2a29a0d2"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1670,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1670,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.689071,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"4ab65b38a22c361586af5d1d2a29a0d2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616040,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0MH0.7ljGpN13eanujM_9dbsEHIbsOqa-KkttgtTAAT73R3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4ab65b38a22c361586af5d1d2a29a0d2","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d38c0cb1-4b9a-4904-b687-af9211d5b993","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.5023537} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4ab65b38a22c361586af5d1d2a29a0d2","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5f9a15d1-c2e0-46da-84b7-b9eff50d77e4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.5067453} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4ab65b38a22c361586af5d1d2a29a0d2","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"7010d4e4-167e-48b2-af1c-63c9b5f2d3cd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.5211294} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c38b762b-ca7e-4857-a756-688515ab3dde","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.521263} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"4ab65b38a22c361586af5d1d2a29a0d2","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:20.521084471Z"}]},"request_id":"6f78d085-67a7-473a-a563-10b775e280fe","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616040.5247736} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4ab65b38a22c361586af5d1d2a29a0d2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4ab65b38a22c361586af5d1d2a29a0d2"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"4ab65b38a22c361586af5d1d2a29a0d2","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4ab65b38a22c361586af5d1d2a29a0d2"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e0681aa871ccd3e14b6d98e4c2f530ef","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":"e0681aa871ccd3e14b6d98e4c2f530ef","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:27:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e828da9d-4214-4433-860e-dfcb2928bfda/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":"e0681aa871ccd3e14b6d98e4c2f530ef"} device-1 | {"level":"info","message":"OPTIONS /devices/e828da9d-4214-4433-860e-dfcb2928bfda/websocket 200 1ms","method":"OPTIONS","requestID":"e0681aa871ccd3e14b6d98e4c2f530ef","responseTime":1,"status":200,"url":"/devices/e828da9d-4214-4433-860e-dfcb2928bfda/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0Mn0.9nt4cX3vuDPaZ02LbdsWLXxAcXnKkDR7wwySya0JUbA","level":"info","message":"auth send jwt","requestID":"3374c86b26be8d71ad327c5c18ddb046"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3374c86b26be8d71ad327c5c18ddb046","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3374c86b26be8d71ad327c5c18ddb046"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1671,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1671,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.850452,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"3374c86b26be8d71ad327c5c18ddb046","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616042,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0Mn0.9nt4cX3vuDPaZ02LbdsWLXxAcXnKkDR7wwySya0JUbA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3374c86b26be8d71ad327c5c18ddb046","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3374c86b26be8d71ad327c5c18ddb046"} gateway-1 | {"time_local":"02/Aug/2024:16:27:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e828da9d-4214-4433-860e-dfcb2928bfda/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.034","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":"3374c86b26be8d71ad327c5c18ddb046"} device-1 | {"level":"info","message":"POST /devices/e828da9d-4214-4433-860e-dfcb2928bfda/websocket 200 28ms","method":"POST","requestID":"3374c86b26be8d71ad327c5c18ddb046","responseTime":28,"status":200,"url":"/devices/e828da9d-4214-4433-860e-dfcb2928bfda/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8a418fa696915e333d6745fee753e467","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":"8a418fa696915e333d6745fee753e467","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/e828da9d-4214-4433-860e-dfcb2928bfda? 200 1ms","method":"OPTIONS","requestID":"8a418fa696915e333d6745fee753e467","responseTime":1,"status":200,"url":"/devices/e828da9d-4214-4433-860e-dfcb2928bfda?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e828da9d-4214-4433-860e-dfcb2928bfda? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"8a418fa696915e333d6745fee753e467"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0Mn0.9nt4cX3vuDPaZ02LbdsWLXxAcXnKkDR7wwySya0JUbA","level":"info","message":"auth send jwt","requestID":"00223b367da5aa63f7e38d20567ab8ae"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"00223b367da5aa63f7e38d20567ab8ae","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"00223b367da5aa63f7e38d20567ab8ae"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1672,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1672,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.787201,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"00223b367da5aa63f7e38d20567ab8ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616042,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0Mn0.9nt4cX3vuDPaZ02LbdsWLXxAcXnKkDR7wwySya0JUbA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"00223b367da5aa63f7e38d20567ab8ae","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:20.521084471Z"}]},"request_id":"d5f3216b-3a85-4dba-b105-682de9e5167b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616042.6711261} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"00223b367da5aa63f7e38d20567ab8ae","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a0de1fe8-fe86-4103-9180-713f7c8aa98b","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616042.6780949} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"00223b367da5aa63f7e38d20567ab8ae","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:20.521084471Z"}]},"request_id":"2686f592-9ea3-43bb-a5cd-17dc25569515","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616042.6904485} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"00223b367da5aa63f7e38d20567ab8ae","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"00223b367da5aa63f7e38d20567ab8ae"} device-1 | {"level":"info","message":"PATCH /devices/e828da9d-4214-4433-860e-dfcb2928bfda? 200 36ms","method":"PATCH","requestID":"00223b367da5aa63f7e38d20567ab8ae","responseTime":36,"status":200,"url":"/devices/e828da9d-4214-4433-860e-dfcb2928bfda?"} gateway-1 | {"time_local":"02/Aug/2024:16:27:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e828da9d-4214-4433-860e-dfcb2928bfda? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"00223b367da5aa63f7e38d20567ab8ae"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0Mn0.9nt4cX3vuDPaZ02LbdsWLXxAcXnKkDR7wwySya0JUbA","level":"info","message":"auth send jwt","requestID":"50d879e8c94ab69f2c9b1a7141c20ddc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"50d879e8c94ab69f2c9b1a7141c20ddc","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"50d879e8c94ab69f2c9b1a7141c20ddc"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1673,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1673,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.152709,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"50d879e8c94ab69f2c9b1a7141c20ddc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616042,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0Mn0.9nt4cX3vuDPaZ02LbdsWLXxAcXnKkDR7wwySya0JUbA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"50d879e8c94ab69f2c9b1a7141c20ddc","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:20.521084471Z"}]},"request_id":"739fcd14-ab91-4213-b46b-e45038885532","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616042.7174392} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"50d879e8c94ab69f2c9b1a7141c20ddc","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"50d879e8c94ab69f2c9b1a7141c20ddc"} gateway-1 | {"time_local":"02/Aug/2024:16:27:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e828da9d-4214-4433-860e-dfcb2928bfda? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"50d879e8c94ab69f2c9b1a7141c20ddc"} device-1 | {"level":"info","message":"GET /devices/e828da9d-4214-4433-860e-dfcb2928bfda? 200 19ms","method":"GET","requestID":"50d879e8c94ab69f2c9b1a7141c20ddc","responseTime":19,"status":200,"url":"/devices/e828da9d-4214-4433-860e-dfcb2928bfda?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0Mn0.9nt4cX3vuDPaZ02LbdsWLXxAcXnKkDR7wwySya0JUbA","level":"info","message":"auth send jwt","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1674,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1674,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.13926,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616042,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0Mn0.9nt4cX3vuDPaZ02LbdsWLXxAcXnKkDR7wwySya0JUbA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b17c694-083a-4bf8-8c80-251556accca8"},"level":"info","message":"Attempting to run experiment","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b17c694-083a-4bf8-8c80-251556accca8"},"level":"info","message":"Attempting to book experiment","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b17c694-083a-4bf8-8c80-251556accca8"},"level":"info","message":"Successfully booked experiment","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"18a3d9f0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"18a42810-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1675,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1675,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.164114,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9af721be-bb8d-4d3d-b36c-147cdcadd176","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"18a3d9f0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/9af721be-bb8d-4d3d-b36c-147cdcadd176","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616042,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0Mn0.9nt4cX3vuDPaZ02LbdsWLXxAcXnKkDR7wwySya0JUbA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"18a3d9f0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1676,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:22Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1676,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.224674,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"18a42810-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616042,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0Mn0.9nt4cX3vuDPaZ02LbdsWLXxAcXnKkDR7wwySya0JUbA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"18a42810-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9af721be-bb8d-4d3d-b36c-147cdcadd176","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9af721be-bb8d-4d3d-b36c-147cdcadd176","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:20.475454416Z"}]},"request_id":"67a15537-a948-4e85-8340-ff2ec3e963cb","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616042.7782547} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"18a3d9f0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:20.521084471Z"}]},"request_id":"a0979739-82c1-458f-b20c-a218a5fc4e22","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616042.7791934} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"18a42810-50ec-11ef-8434-2f6d198c7397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"18a3d9f0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/9af721be-bb8d-4d3d-b36c-147cdcadd176? 200 18ms","method":"GET","requestID":"18a3d9f0-50ec-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/9af721be-bb8d-4d3d-b36c-147cdcadd176?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"18a42810-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/e828da9d-4214-4433-860e-dfcb2928bfda? 200 18ms","method":"GET","requestID":"18a42810-50ec-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/e828da9d-4214-4433-860e-dfcb2928bfda?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b17c694-083a-4bf8-8c80-251556accca8"},"level":"info","message":"Setting up experiment","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b17c694-083a-4bf8-8c80-251556accca8"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b17c694-083a-4bf8-8c80-251556accca8"},"level":"info","message":"Successfully locked booking for experiment","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b17c694-083a-4bf8-8c80-251556accca8"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49"} device-1 | {"level":"info","message":"postDevicesByDeviceId called","requestID":"18a9a650-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1677,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1677,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.223815,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:22Z"} authorization-1 | {"action":"instantiate","level":"info","message":"opa_check","object":"device:http://localhost/devices/9af721be-bb8d-4d3d-b36c-147cdcadd176","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"18a9a650-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/9af721be-bb8d-4d3d-b36c-147cdcadd176","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616042,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0Mn0.9nt4cX3vuDPaZ02LbdsWLXxAcXnKkDR7wwySya0JUbA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"18a9a650-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db9dd0b-3232-46a9-9b1e-5ba887b4c442","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"683980eb-183c-482f-bce3-fb84342d1f23","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616042.83899} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2024a6f8-7550-444a-bc39-604df2d02c24","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616042.839472} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"18a9a650-50ec-11ef-8434-2f6d198c7397","responseTime":13,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"registering changed-callback for device 'http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442' to 'http://localhost/callbacks/experiment'","requestID":"18a9a650-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceId succeeded","requestID":"18a9a650-50ec-11ef-8434-2f6d198c7397"} authentication-1 | {"level":"info","message":"POST /token 201 28ms","method":"POST","requestID":"18b08420-50ec-11ef-a097-1f275d28d724","responseTime":28,"status":201,"url":"/token"} device-1 | {"level":"info","message":"POST /devices/9af721be-bb8d-4d3d-b36c-147cdcadd176?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 81ms","method":"POST","requestID":"18a9a650-50ec-11ef-8434-2f6d198c7397","responseTime":81,"status":201,"url":"/devices/9af721be-bb8d-4d3d-b36c-147cdcadd176?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b17c694-083a-4bf8-8c80-251556accca8"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b17c694-083a-4bf8-8c80-251556accca8"},"level":"info","message":"Attempting to update booking for experiment","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b17c694-083a-4bf8-8c80-251556accca8"},"level":"info","message":"Successfully updated booking for experiment","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b17c694-083a-4bf8-8c80-251556accca8"},"level":"info","message":"Successfully set up experiment","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"18bdf1a0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"18be3fc0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"18be8de0-50ec-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b17c694-083a-4bf8-8c80-251556accca8"},"level":"info","message":"Successfully running experiment","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1678,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:22Z"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Received request.","req_id":1679,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1678,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.801115,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"18bdf1a0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616042,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0Mn0.9nt4cX3vuDPaZ02LbdsWLXxAcXnKkDR7wwySya0JUbA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"18bdf1a0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56954","level":"info","msg":"Sent response.","req_id":1679,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.374878,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"18be3fc0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616042,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0Mn0.9nt4cX3vuDPaZ02LbdsWLXxAcXnKkDR7wwySya0JUbA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"18be3fc0-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1680,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:22Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1680,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.339932,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:22Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db9dd0b-3232-46a9-9b1e-5ba887b4c442","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3f3d5ffb-33cd-4c3f-9f92-df1ef08fd8be","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616042.9508722} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db9dd0b-3232-46a9-9b1e-5ba887b4c442","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db9dd0b-3232-46a9-9b1e-5ba887b4c442","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:22.838907503Z"}]},"request_id":"cc45c0ae-a13c-4d4d-a85d-dbab6e2feaa8","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616042.9533067} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"18be8de0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442","object_type":"device","rebac_allow":false,"scope_allow":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":"18be8de0-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:20.521084471Z"}]},"request_id":"8f55d447-8e9a-42a2-8c10-d588430cab85","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616042.9550326} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"18bdf1a0-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"18be3fc0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4b17c694-083a-4bf8-8c80-251556accca8#owner@http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4b17c694-083a-4bf8-8c80-251556accca8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"5892bc9e-3591-4808-8cc7-7573ec00a77c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616042.9630408} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5780bbb2-fe52-4fdd-b434-a8469244f943","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616042.963317} device-1 | {"data":{"error":"MissingEntityError","message":"Could not find websocket connection for device 2db9dd0b-3232-46a9-9b1e-5ba887b4c442","method":"POST","stack":"MissingEntityError: Could not find websocket connection for device 2db9dd0b-3232-46a9-9b1e-5ba887b4c442\n at Object.postDevicesByDeviceIdSignaling (file:///usr/local/lib/node_modules/@crosslab/service-device/app/operations/devices/device/signaling/post.js:44:15)\n at async file:///usr/local/lib/node_modules/@crosslab/service-device/app/generated/routes.js:276:28","status":404,"url":"/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"18be8de0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442/signaling 404 23ms","method":"POST","requestID":"18be8de0-50ec-11ef-8434-2f6d198c7397","responseTime":23,"status":404,"url":"/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"18bdf1a0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442? 200 28ms","method":"GET","requestID":"18bdf1a0-50ec-11ef-8434-2f6d198c7397","responseTime":28,"status":200,"url":"/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"18be3fc0-50ec-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"response":{"body":{"error":"MissingEntityError","message":"Could not find websocket connection for device 2db9dd0b-3232-46a9-9b1e-5ba887b4c442"},"status":404}},"level":"error","message":"Could not send status-update message","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49"} device-1 | {"level":"info","message":"GET /devices/e828da9d-4214-4433-860e-dfcb2928bfda? 200 26ms","method":"GET","requestID":"18be3fc0-50ec-11ef-8434-2f6d198c7397","responseTime":26,"status":200,"url":"/devices/e828da9d-4214-4433-860e-dfcb2928bfda?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"18c25e70-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1681,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:22Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9cb429b9-a231-47b8-8169-c6748ae507bf","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616042.9712996} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1681,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.664463,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"18c25e70-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","object_type":"device","rebac_allow":false,"scope_allow":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":"18c25e70-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/4b17c694-083a-4bf8-8c80-251556accca8","user":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49"} gateway-1 | {"time_local":"02/Aug/2024:16:27:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1108","request_time":"0.249","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49"} experiment-1 | {"level":"info","message":"POST /experiments? 201 244ms","method":"POST","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49","responseTime":244,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"18c25e70-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/e828da9d-4214-4433-860e-dfcb2928bfda/signaling 200 9ms","method":"POST","requestID":"18c25e70-50ec-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/e828da9d-4214-4433-860e-dfcb2928bfda/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4ff6fbf4f5a415c595bb34fb6c50fc6b","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":"4ff6fbf4f5a415c595bb34fb6c50fc6b","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:27:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442/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":"4ff6fbf4f5a415c595bb34fb6c50fc6b"} device-1 | {"level":"info","message":"OPTIONS /devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442/websocket 200 1ms","method":"OPTIONS","requestID":"4ff6fbf4f5a415c595bb34fb6c50fc6b","responseTime":1,"status":200,"url":"/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6IkIwc1NaQ1duV2V4a3NULW4zalNpanVlakM2OEpnNDFER0NhRmMxU0tuSlBVR2l1UjEzMjBwbk4tUVlaYjJzdHNsTXFUN0FhT1hzNjlyZDlEZlR5a3RnIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0NH0.xm9xibcz5sknDfzLrx7O15qA4lOos2yOQ5ereAEeHU8","level":"info","message":"auth send jwt","requestID":"e547ce47085a1b7cf0d670833b977e02"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e547ce47085a1b7cf0d670833b977e02","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e547ce47085a1b7cf0d670833b977e02"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1682,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1682,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.248957,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"e547ce47085a1b7cf0d670833b977e02","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442","object_type":"device","payload":{"admin":true,"edgeToken":"B0sSZCWnWexksT-n3jSijuejC68Jg41DGCaFc1SKnJPUGiuR1320pnN-QYZb2stslMqT7AaOXs69rd9DfTyktg","iat":1722616044,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6IkIwc1NaQ1duV2V4a3NULW4zalNpanVlakM2OEpnNDFER0NhRmMxU0tuSlBVR2l1UjEzMjBwbk4tUVlaYjJzdHNsTXFUN0FhT1hzNjlyZDlEZlR5a3RnIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0NH0.xm9xibcz5sknDfzLrx7O15qA4lOos2yOQ5ereAEeHU8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e547ce47085a1b7cf0d670833b977e02","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e547ce47085a1b7cf0d670833b977e02"} device-1 | {"level":"info","message":"POST /devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442/websocket 200 22ms","method":"POST","requestID":"e547ce47085a1b7cf0d670833b977e02","responseTime":22,"status":200,"url":"/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442/websocket"} gateway-1 | {"time_local":"02/Aug/2024:16:27:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442/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":"e547ce47085a1b7cf0d670833b977e02"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"305fa2c22d69c7de6e956e106ad77812","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":"305fa2c22d69c7de6e956e106ad77812","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","device":{"announcedAvailability":[],"codeUrl":"http://localhost/cloud_instantiable_device","connected":true,"description":"A JS test device","devices":[],"instantiateUrl":"http://localhost/edge_instantiable_device","isPublic":true,"name":"JS Device 1","services":[],"type":"device","url":"http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"305fa2c22d69c7de6e956e106ad77812"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b71787f0fcf69b4995a12f56cb2c57d8","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":"b71787f0fcf69b4995a12f56cb2c57d8","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"02/Aug/2024:16:27:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442? HTTP/1.1","status": "200","body_bytes_sent":"26","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":"b71787f0fcf69b4995a12f56cb2c57d8"} device-1 | {"level":"info","message":"OPTIONS /devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442? 200 1ms","method":"OPTIONS","requestID":"b71787f0fcf69b4995a12f56cb2c57d8","responseTime":1,"status":200,"url":"/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442?"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 22ms","method":"POST","requestID":"305fa2c22d69c7de6e956e106ad77812","responseTime":22,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27: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.026","http_referrer":"","http_user_agent":"node-fetch","requestID":"305fa2c22d69c7de6e956e106ad77812"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6IkIwc1NaQ1duV2V4a3NULW4zalNpanVlakM2OEpnNDFER0NhRmMxU0tuSlBVR2l1UjEzMjBwbk4tUVlaYjJzdHNsTXFUN0FhT1hzNjlyZDlEZlR5a3RnIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0NX0.AUwclFmJ8OZbiqHsVyYwBZ0lqulKR2DYdTs_H85QTi0","level":"info","message":"auth send jwt","requestID":"d1cea5f8cdb9f8a910d2d7abef011f44"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d1cea5f8cdb9f8a910d2d7abef011f44","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d1cea5f8cdb9f8a910d2d7abef011f44"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1683,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1683,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.194283,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"d1cea5f8cdb9f8a910d2d7abef011f44","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442","object_type":"device","payload":{"admin":true,"edgeToken":"B0sSZCWnWexksT-n3jSijuejC68Jg41DGCaFc1SKnJPUGiuR1320pnN-QYZb2stslMqT7AaOXs69rd9DfTyktg","iat":1722616045,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6IkIwc1NaQ1duV2V4a3NULW4zalNpanVlakM2OEpnNDFER0NhRmMxU0tuSlBVR2l1UjEzMjBwbk4tUVlaYjJzdHNsTXFUN0FhT1hzNjlyZDlEZlR5a3RnIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0NX0.AUwclFmJ8OZbiqHsVyYwBZ0lqulKR2DYdTs_H85QTi0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d1cea5f8cdb9f8a910d2d7abef011f44","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db9dd0b-3232-46a9-9b1e-5ba887b4c442","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db9dd0b-3232-46a9-9b1e-5ba887b4c442","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:22.838907503Z"}]},"request_id":"aeaea61a-abae-41ab-96fb-37b19f17bd66","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616045.087781} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d1cea5f8cdb9f8a910d2d7abef011f44","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:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6e01ef97-564c-4e31-9c24-97b785a5493e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616045.0950682} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"d1cea5f8cdb9f8a910d2d7abef011f44","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db9dd0b-3232-46a9-9b1e-5ba887b4c442","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db9dd0b-3232-46a9-9b1e-5ba887b4c442","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:22.838907503Z"}]},"request_id":"4ac884ab-1d04-4b89-95c4-31197c259df5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616045.1076999} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d1cea5f8cdb9f8a910d2d7abef011f44","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442' to 'http://localhost/callbacks/experiment'","requestID":"d1cea5f8cdb9f8a910d2d7abef011f44"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d1cea5f8cdb9f8a910d2d7abef011f44"} gateway-1 | {"time_local":"02/Aug/2024:16:27:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.044","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":"d1cea5f8cdb9f8a910d2d7abef011f44"} device-1 | {"level":"info","message":"PATCH /devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442? 200 38ms","method":"PATCH","requestID":"d1cea5f8cdb9f8a910d2d7abef011f44","responseTime":38,"status":200,"url":"/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8b5dcf39d78c042cd231d410739b518b","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":"8b5dcf39d78c042cd231d410739b518b","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","device":{"announcedAvailability":[],"codeUrl":"http://localhost/cloud_instantiable_device","connected":true,"description":"A JS test device","devices":[],"instantiateUrl":"http://localhost/edge_instantiable_device","isPublic":true,"name":"JS Device 1","services":[{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]}],"type":"device","url":"http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"8b5dcf39d78c042cd231d410739b518b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"8b5dcf39d78c042cd231d410739b518b","responseTime":4,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27: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.006","http_referrer":"","http_user_agent":"node-fetch","requestID":"8b5dcf39d78c042cd231d410739b518b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0NX0.PSfTBcX0zkWCiZM1l3um_j8myAZyDE-XnMPNuyloptY","level":"info","message":"auth send jwt","requestID":"fd25eb80e15881144233153dc65b9696"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"fd25eb80e15881144233153dc65b9696","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fd25eb80e15881144233153dc65b9696"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1684,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1684,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.023816,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"fd25eb80e15881144233153dc65b9696","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616045,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0NX0.PSfTBcX0zkWCiZM1l3um_j8myAZyDE-XnMPNuyloptY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fd25eb80e15881144233153dc65b9696","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db9dd0b-3232-46a9-9b1e-5ba887b4c442","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db9dd0b-3232-46a9-9b1e-5ba887b4c442","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:22.838907503Z"}]},"request_id":"68b58064-1270-45ce-ba5e-8ebe949e81c3","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616045.127788} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"fd25eb80e15881144233153dc65b9696","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fd25eb80e15881144233153dc65b9696"} gateway-1 | {"time_local":"02/Aug/2024:16:27:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fd25eb80e15881144233153dc65b9696"} device-1 | {"level":"info","message":"GET /devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442? 200 11ms","method":"GET","requestID":"fd25eb80e15881144233153dc65b9696","responseTime":11,"status":200,"url":"/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0NX0.PSfTBcX0zkWCiZM1l3um_j8myAZyDE-XnMPNuyloptY","level":"info","message":"auth send jwt","requestID":"a1c613a55f28f56897e639881796aaa6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a1c613a55f28f56897e639881796aaa6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a1c613a55f28f56897e639881796aaa6"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1685,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:25Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1685,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.061082,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"a1c613a55f28f56897e639881796aaa6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616045,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0NX0.PSfTBcX0zkWCiZM1l3um_j8myAZyDE-XnMPNuyloptY"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"a1c613a55f28f56897e639881796aaa6","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:20.521084471Z"}]},"request_id":"3cc9497c-037c-4618-8974-c931d64c1f9c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616045.1460285} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a1c613a55f28f56897e639881796aaa6","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a1c613a55f28f56897e639881796aaa6"} gateway-1 | {"time_local":"02/Aug/2024:16:27:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e828da9d-4214-4433-860e-dfcb2928bfda? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a1c613a55f28f56897e639881796aaa6"} device-1 | {"level":"info","message":"GET /devices/e828da9d-4214-4433-860e-dfcb2928bfda? 200 11ms","method":"GET","requestID":"a1c613a55f28f56897e639881796aaa6","responseTime":11,"status":200,"url":"/devices/e828da9d-4214-4433-860e-dfcb2928bfda?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1bbe1240-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1bbe6060-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1686,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:27Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1686,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.387167,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1bbe1240-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616042,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0Mn0.9nt4cX3vuDPaZ02LbdsWLXxAcXnKkDR7wwySya0JUbA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1bbe1240-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35314","level":"info","msg":"Received request.","req_id":1687,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:27Z"} authorization-1 | {"client_addr":"127.0.0.1:35314","level":"info","msg":"Sent response.","req_id":1687,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.489223,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1bbe6060-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616042,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0Mn0.9nt4cX3vuDPaZ02LbdsWLXxAcXnKkDR7wwySya0JUbA"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"1bbe6060-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db9dd0b-3232-46a9-9b1e-5ba887b4c442","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db9dd0b-3232-46a9-9b1e-5ba887b4c442","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:22.838907503Z"}]},"request_id":"26cb826a-4eb3-4032-a7ac-990f5e4fd0a1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616047.987316} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1bbe1240-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:20.521084471Z"}]},"request_id":"87962606-6eca-4756-a61c-cdba9a1b5877","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616047.988843} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1bbe6060-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1bbe1240-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442? 200 23ms","method":"GET","requestID":"1bbe1240-50ec-11ef-8434-2f6d198c7397","responseTime":23,"status":200,"url":"/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1bbe6060-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/e828da9d-4214-4433-860e-dfcb2928bfda? 200 22ms","method":"GET","requestID":"1bbe6060-50ec-11ef-8434-2f6d198c7397","responseTime":22,"status":200,"url":"/devices/e828da9d-4214-4433-860e-dfcb2928bfda?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1bc230f0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1688,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db9dd0b-3232-46a9-9b1e-5ba887b4c442","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"98293200-a9f5-40ed-a83b-4c4b94e03208","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616048.0062685} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1688,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.36437,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1bc230f0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442","object_type":"device","rebac_allow":false,"scope_allow":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":"1bc230f0-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1bc230f0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442/signaling 200 14ms","method":"POST","requestID":"1bc230f0-50ec-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1bc4c900-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1689,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bc979f38-a1c1-4f4f-9090-676c6e14911c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616048.0234935} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1689,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.32397,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1bc4c900-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","object_type":"device","rebac_allow":false,"scope_allow":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":"1bc4c900-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1bc4c900-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/e828da9d-4214-4433-860e-dfcb2928bfda/signaling 200 14ms","method":"POST","requestID":"1bc4c900-50ec-11ef-8434-2f6d198c7397","responseTime":14,"status":200,"url":"/devices/e828da9d-4214-4433-860e-dfcb2928bfda/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b17c694-083a-4bf8-8c80-251556accca8"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1bc76110-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1bc7af30-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1690,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1690,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.780366,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"client_addr":"127.0.0.1:35314","level":"info","msg":"Received request.","req_id":1691,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1bc76110-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616042,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0Mn0.9nt4cX3vuDPaZ02LbdsWLXxAcXnKkDR7wwySya0JUbA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1bc76110-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35314","level":"info","msg":"Sent response.","req_id":1691,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.283142,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1bc7af30-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616042,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0Mn0.9nt4cX3vuDPaZ02LbdsWLXxAcXnKkDR7wwySya0JUbA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1bc7af30-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db9dd0b-3232-46a9-9b1e-5ba887b4c442","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db9dd0b-3232-46a9-9b1e-5ba887b4c442","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:22.838907503Z"}]},"request_id":"be314a55-ed13-42e9-9b22-d8f552554520","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616048.0451734} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1bc76110-50ec-11ef-8434-2f6d198c7397","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:37634","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"},"timestamp":"2024-08-02T16:27:20.521084471Z"}]},"request_id":"bd1799e4-8cd9-437a-b75a-2fb759c59358","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616048.0467374} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1bc7af30-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1bc76110-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442? 200 20ms","method":"GET","requestID":"1bc76110-50ec-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1bc7af30-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /devices/e828da9d-4214-4433-860e-dfcb2928bfda? 200 20ms","method":"GET","requestID":"1bc7af30-50ec-11ef-8434-2f6d198c7397","responseTime":20,"status":200,"url":"/devices/e828da9d-4214-4433-860e-dfcb2928bfda?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b17c694-083a-4bf8-8c80-251556accca8"},"level":"info","message":"Building connection plan","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"a7fb54e4-750c-4fcb-b3e4-3f8f7242247a"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"81633f9c-6938-4ee0-a0a5-19d538fcabf2"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"aabb2c3d-c41a-4086-9c90-8a96b7145863"}]},"level":"info","message":"Built pairwise service configurations","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"1bcb31a0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1692,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1692,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.142727,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1bcb31a0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616042,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0Mn0.9nt4cX3vuDPaZ02LbdsWLXxAcXnKkDR7wwySya0JUbA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1bcb31a0-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c'. 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]}},"raw_response":{},"request_id":"4a6be1d2-903d-42e0-a8d9-b3fa45e97574","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616048.0756547} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"11beb8e4-0be3-44d7-804d-4bb2369dd2c4","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616048.0760024} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"1bcb31a0-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"1bcb31a0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"1bcb31a0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2c96e610-677f-4390-b161-cb0c4d68c3c8'","requestID":"1bcb31a0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2c96e610-677f-4390-b161-cb0c4d68c3c8'","requestID":"1bcb31a0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"1bcb31a0-50ec-11ef-8434-2f6d198c7397"} 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":"1bcb31a0-50ec-11ef-8434-2f6d198c7397","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":"1bcb31a0-50ec-11ef-8434-2f6d198c7397"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b17c694-083a-4bf8-8c80-251556accca8"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"47d6ca2642f6e9e6054e2dae1d8c8e49"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1bd51cb0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1693,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db9dd0b-3232-46a9-9b1e-5ba887b4c442","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2d488ac4-a110-4c56-86f3-a2412e80e829","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616048.1277184} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1693,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.474198,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1bd51cb0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442","object_type":"device","rebac_allow":false,"scope_allow":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":"1bd51cb0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1bd51cb0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442/signaling 200 9ms","method":"POST","requestID":"1bd51cb0-50ec-11ef-8434-2f6d198c7397","responseTime":9,"status":200,"url":"/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1bd6f170-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1694,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:28Z"} device-1 | {"device":"e828da9d-4214-4433-860e-dfcb2928bfda","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"e828da9d-4214-4433-860e-dfcb2928bfda","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"2db9dd0b-3232-46a9-9b1e-5ba887b4c442","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"2db9dd0b-3232-46a9-9b1e-5ba887b4c442","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e147a94a-305b-4f87-8542-67742360a15c","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616048.1466684} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1694,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.710279,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1bd6f170-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","object_type":"device","rebac_allow":false,"scope_allow":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":"1bd6f170-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1bd6f170-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/e828da9d-4214-4433-860e-dfcb2928bfda/signaling 200 18ms","method":"POST","requestID":"1bd6f170-50ec-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/devices/e828da9d-4214-4433-860e-dfcb2928bfda/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 4701961683489341201 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:HfDf\r\na=ice-pwd:ykclwv9XLDZJZcBzx7v6k0fo\r\na=ice-options:trickle\r\na=fingerprint:sha-256 6E:4A:23:82:78:1A:4E:39:A5:A6:19:08:FA:7A:48:17:68:E8:B4:31:32:C4:8C:E9:8B:EC:68:5A:4F:99:AC:70\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"e828da9d-4214-4433-860e-dfcb2928bfda","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 1308866432079774386 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:RAQh\r\na=ice-pwd:dZwnqAyEXdfvEYoBAQo5BAZf\r\na=ice-options:trickle\r\na=fingerprint:sha-256 54:7B:FE:3A:5A:AC:8D:04:C8:CD:79:B0:05:4E:9C:B4:C2:13:B6:FA:48:2D:69:FD:45:61:63:5B:23:61:A0:E3\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"2db9dd0b-3232-46a9-9b1e-5ba887b4c442","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3472484113 1 udp 2113937151 d2d3569f-39f8-4aee-a42d-4cb1d5c71fd5.local 33626 typ host generation 0 ufrag RAQh network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2db9dd0b-3232-46a9-9b1e-5ba887b4c442","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3332484310 1 udp 1677729535 141.24.211.56 33626 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag RAQh network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2db9dd0b-3232-46a9-9b1e-5ba887b4c442","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442'"} device-1 | {"content":{"candidate":"candidate:547415483 1 udp 2113937151 c6030ef3-e6e4-4bd7-9753-26aeef6f5b52.local 56360 typ host generation 0 ufrag HfDf network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e828da9d-4214-4433-860e-dfcb2928bfda","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:687386236 1 udp 1677729535 141.24.211.56 56360 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag HfDf network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e828da9d-4214-4433-860e-dfcb2928bfda","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda'"} device-1 | {"device":"e828da9d-4214-4433-860e-dfcb2928bfda","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"2db9dd0b-3232-46a9-9b1e-5ba887b4c442","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2c96e610-677f-4390-b161-cb0c4d68c3c8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2c96e610-677f-4390-b161-cb0c4d68c3c8","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ec628b6aaa824aa8b917664f634fdbbf","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":"ec628b6aaa824aa8b917664f634fdbbf","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/2c96e610-677f-4390-b161-cb0c4d68c3c8"}}},"level":"info","message":"received a callback","requestID":"ec628b6aaa824aa8b917664f634fdbbf"} device-1 | {"device":"e828da9d-4214-4433-860e-dfcb2928bfda","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"2db9dd0b-3232-46a9-9b1e-5ba887b4c442","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"e828da9d-4214-4433-860e-dfcb2928bfda","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"2db9dd0b-3232-46a9-9b1e-5ba887b4c442","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"ec628b6aaa824aa8b917664f634fdbbf","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27:28 +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":"ec628b6aaa824aa8b917664f634fdbbf"} device-1 | {"device":"2db9dd0b-3232-46a9-9b1e-5ba887b4c442","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"2c96e610-677f-4390-b161-cb0c4d68c3c8","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"2c96e610-677f-4390-b161-cb0c4d68c3c8","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/2c96e610-677f-4390-b161-cb0c4d68c3c8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2c96e610-677f-4390-b161-cb0c4d68c3c8","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cf18cedd6a4e7852eba8463a454dc03f","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":"cf18cedd6a4e7852eba8463a454dc03f","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/2c96e610-677f-4390-b161-cb0c4d68c3c8"}}},"level":"info","message":"received a callback","requestID":"cf18cedd6a4e7852eba8463a454dc03f"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"1be37490-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1695,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2c96e610-677f-4390-b161-cb0c4d68c3c8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"73257dee-5231-44e5-81da-070a6f970973","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616048.2211475} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1695,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.015839,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2c96e610-677f-4390-b161-cb0c4d68c3c8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1be37490-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2c96e610-677f-4390-b161-cb0c4d68c3c8","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":"1be37490-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"1be37490-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"GET /peerconnections/2c96e610-677f-4390-b161-cb0c4d68c3c8 200 7ms","method":"GET","requestID":"1be37490-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/peerconnections/2c96e610-677f-4390-b161-cb0c4d68c3c8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 24ms","method":"POST","requestID":"cf18cedd6a4e7852eba8463a454dc03f","responseTime":24,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27:28 +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.027","http_referrer":"","http_user_agent":"node-fetch","requestID":"cf18cedd6a4e7852eba8463a454dc03f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1be681d0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1696,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db9dd0b-3232-46a9-9b1e-5ba887b4c442","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"32a7eb2b-3cf8-4795-b18e-edcbebf89c40","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616048.2416883} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1696,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.126328,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1be681d0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442","object_type":"device","rebac_allow":false,"scope_allow":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":"1be681d0-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1be681d0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442/signaling 200 8ms","method":"POST","requestID":"1be681d0-50ec-11ef-8434-2f6d198c7397","responseTime":8,"status":200,"url":"/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1be80870-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1697,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a197ab96-eb84-42ea-b3e2-2bc8da0344c1","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616048.2508717} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1697,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.212913,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1be80870-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","object_type":"device","rebac_allow":false,"scope_allow":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":"1be80870-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1be80870-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/e828da9d-4214-4433-860e-dfcb2928bfda/signaling 200 7ms","method":"POST","requestID":"1be80870-50ec-11ef-8434-2f6d198c7397","responseTime":7,"status":200,"url":"/devices/e828da9d-4214-4433-860e-dfcb2928bfda/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0OH0.UGfu2uF4mENfvPehqm1ckW-D21l_0DRFjDiFnd3msws","level":"info","message":"auth send jwt","requestID":"ee1285c293fff6086a372a743d611dc9"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ee1285c293fff6086a372a743d611dc9","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/4b17c694-083a-4bf8-8c80-251556accca8","requestID":"ee1285c293fff6086a372a743d611dc9"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1698,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1698,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.99349,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4b17c694-083a-4bf8-8c80-251556accca8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"ee1285c293fff6086a372a743d611dc9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/4b17c694-083a-4bf8-8c80-251556accca8","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616048,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0OH0.UGfu2uF4mENfvPehqm1ckW-D21l_0DRFjDiFnd3msws"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ee1285c293fff6086a372a743d611dc9","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/4b17c694-083a-4bf8-8c80-251556accca8","requestID":"ee1285c293fff6086a372a743d611dc9"} gateway-1 | {"time_local":"02/Aug/2024:16:27:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/4b17c694-083a-4bf8-8c80-251556accca8 HTTP/1.1","status": "200","body_bytes_sent":"1181","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ee1285c293fff6086a372a743d611dc9"} experiment-1 | {"level":"info","message":"GET /experiments/4b17c694-083a-4bf8-8c80-251556accca8 200 14ms","method":"GET","requestID":"ee1285c293fff6086a372a743d611dc9","responseTime":14,"status":200,"url":"/experiments/4b17c694-083a-4bf8-8c80-251556accca8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0OH0.UGfu2uF4mENfvPehqm1ckW-D21l_0DRFjDiFnd3msws","level":"info","message":"auth send jwt","requestID":"abcd639b5cf172c95858495d3442df56"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"abcd639b5cf172c95858495d3442df56","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/4b17c694-083a-4bf8-8c80-251556accca8","requestID":"abcd639b5cf172c95858495d3442df56"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1699,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1699,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.20409,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4b17c694-083a-4bf8-8c80-251556accca8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"abcd639b5cf172c95858495d3442df56","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"experiment:http://localhost/experiments/4b17c694-083a-4bf8-8c80-251556accca8","object_type":"experiment","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616048,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0OH0.UGfu2uF4mENfvPehqm1ckW-D21l_0DRFjDiFnd3msws"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"abcd639b5cf172c95858495d3442df56","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b17c694-083a-4bf8-8c80-251556accca8"},"level":"info","message":"Attempting to finish experiment","requestID":"abcd639b5cf172c95858495d3442df56"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"1bf3c840-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1700,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1700,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.143298,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2c96e610-677f-4390-b161-cb0c4d68c3c8","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1bf3c840-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"peerconnection:http://localhost/peerconnections/2c96e610-677f-4390-b161-cb0c4d68c3c8","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616048,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0OH0.UGfu2uF4mENfvPehqm1ckW-D21l_0DRFjDiFnd3msws"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1bf3c840-50ec-11ef-8434-2f6d198c7397","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2c96e610-677f-4390-b161-cb0c4d68c3c8","device":"2db9dd0b-3232-46a9-9b1e-5ba887b4c442","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2c96e610-677f-4390-b161-cb0c4d68c3c8","device":"e828da9d-4214-4433-860e-dfcb2928bfda","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2c96e610-677f-4390-b161-cb0c4d68c3c8' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2c96e610-677f-4390-b161-cb0c4d68c3c8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2c96e610-677f-4390-b161-cb0c4d68c3c8","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"26a55ddfd5ac8e431ebb712b24a13034","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":"26a55ddfd5ac8e431ebb712b24a13034","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2c96e610-677f-4390-b161-cb0c4d68c3c8"}}},"level":"info","message":"received a callback","requestID":"26a55ddfd5ac8e431ebb712b24a13034"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3b8918ce01fdc14e19694658c67c99f3","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":"3b8918ce01fdc14e19694658c67c99f3","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2c96e610-677f-4390-b161-cb0c4d68c3c8': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2c96e610-677f-4390-b161-cb0c4d68c3c8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"3a2da426-71af-4f02-9355-a290212ae387","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616048.354803} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442"},{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2c96e610-677f-4390-b161-cb0c4d68c3c8"}}},"level":"info","message":"received a callback","requestID":"3b8918ce01fdc14e19694658c67c99f3"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a709ede2-5132-40fc-90cb-8b9a0b8ae53d","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616048.3554196} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"1bf3c840-50ec-11ef-8434-2f6d198c7397","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"2c96e610-677f-4390-b161-cb0c4d68c3c8","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"1bf3c840-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /peerconnections/2c96e610-677f-4390-b161-cb0c4d68c3c8 204 49ms","method":"DELETE","requestID":"1bf3c840-50ec-11ef-8434-2f6d198c7397","responseTime":49,"status":204,"url":"/peerconnections/2c96e610-677f-4390-b161-cb0c4d68c3c8"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId called","requestID":"1bfbb780-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1701,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1701,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.717978,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"device:http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1bfbb780-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c","object":"device:http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442","object_type":"device","payload":{"admin":true,"edgeToken":"gVk33NQXAkbbvvWCnlIffOh-1DYh0i5GJTJ616WHhvBBiqwcll6JZ8EaXj6_G5WYkMOuniWPCAWSUGxHiGJ5_Q","iat":1722616048,"sub":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c","subject_alt":"http://localhost/users/8c86e146-76a8-44fa-ac96-109ffe81f33c"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzhjODZlMTQ2LTc2YTgtNDRmYS1hYzk2LTEwOWZmZTgxZjMzYyIsImVkZ2VUb2tlbiI6ImdWazMzTlFYQWtiYnZ2V0NubElmZk9oLTFEWWgwaTVHSlRKNjE2V0hodkJCaXF3Y2xsNkpaOEVhWGo2X0c1V1lrTU91bmlXUENBV1NVR3hIaUdKNV9RIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMjYxNjA0OH0.UGfu2uF4mENfvPehqm1ckW-D21l_0DRFjDiFnd3msws"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1bfbb780-50ec-11ef-8434-2f6d198c7397","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'device:http%3A%2F%2Flocalhost%2Fdevices%2F2db9dd0b-3232-46a9-9b1e-5ba887b4c442': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db9dd0b-3232-46a9-9b1e-5ba887b4c442","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"7ebf7688-574f-4423-b6b0-35064dcdb31f","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616048.3935754} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5d4fed71-6367-4d46-8743-6fcac502cd40","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616048.3939643} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"1bfbb780-50ec-11ef-8434-2f6d198c7397","responseTime":10,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId succeeded","requestID":"1bfbb780-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"DELETE /devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442 204 31ms","method":"DELETE","requestID":"1bfbb780-50ec-11ef-8434-2f6d198c7397","responseTime":31,"status":204,"url":"/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4b17c694-083a-4bf8-8c80-251556accca8"},"level":"info","message":"Successfully finished experiment","requestID":"abcd639b5cf172c95858495d3442df56"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1c037fb0-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1702,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db9dd0b-3232-46a9-9b1e-5ba887b4c442","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b2f67424-e015-4243-93ff-dc6c61b2e07e","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616048.433244} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1702,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.374007,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1c037fb0-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442","object_type":"device","rebac_allow":false,"scope_allow":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":"1c037fb0-50ec-11ef-8434-2f6d198c7397","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/2db9dd0b-3232-46a9-9b1e-5ba887b4c442/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"1c037fb0-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442/signaling 404 11ms","method":"POST","requestID":"1c037fb0-50ec-11ef-8434-2f6d198c7397","responseTime":11,"status":404,"url":"/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442/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":"abcd639b5cf172c95858495d3442df56"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1c05a290-50ec-11ef-8434-2f6d198c7397"} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Received request.","req_id":1703,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","contextual_tuples":null,"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe828da9d-4214-4433-860e-dfcb2928bfda","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4ca92633-fbae-43a9-bd6f-0072076b259a","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616048.44726} authorization-1 | {"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","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%2F8c86e146-76a8-44fa-ac96-109ffe81f33c', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4b17c694-083a-4bf8-8c80-251556accca8': 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:37634","raw_request":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4b17c694-083a-4bf8-8c80-251556accca8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F8c86e146-76a8-44fa-ac96-109ffe81f33c"}]},"store_id":"01J49YG6F4WKHZEGNF2PA5V53S","writes":null},"raw_response":{},"request_id":"40b8f92c-8b5c-46d3-817e-9f62e0cb95fd","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616048.44726} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:37634","raw_request":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","store_id":"01J49YG6F4WKHZEGNF2PA5V53S"},"raw_response":{"authorization_model":{"id":"01J49YG6GDSE9D7SVDNXCAF55E","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2b62fe65-2e42-4e35-935a-d309c28860e5","store_id":"01J49YG6F4WKHZEGNF2PA5V53S","subsystem":"openfga","timestamp":1722616048.447612} authorization-1 | {"client_addr":"127.0.0.1:58406","level":"info","msg":"Sent response.","req_id":1703,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.865261,"resp_status":200,"subsystem":"opa","time":"2024-08-02T16:27:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","openfga":{"authorization_model_id":"01J49YG6GDSE9D7SVDNXCAF55E","store":"01J49YG6F4WKHZEGNF2PA5V53S"},"requestID":"1c05a290-50ec-11ef-8434-2f6d198c7397","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda","object_type":"device","rebac_allow":false,"scope_allow":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":"1c05a290-50ec-11ef-8434-2f6d198c7397","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"abcd639b5cf172c95858495d3442df56","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1c05a290-50ec-11ef-8434-2f6d198c7397"} device-1 | {"level":"info","message":"POST /devices/e828da9d-4214-4433-860e-dfcb2928bfda/signaling 200 12ms","method":"POST","requestID":"1c05a290-50ec-11ef-8434-2f6d198c7397","responseTime":12,"status":200,"url":"/devices/e828da9d-4214-4433-860e-dfcb2928bfda/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/4b17c694-083a-4bf8-8c80-251556accca8","requestID":"abcd639b5cf172c95858495d3442df56"} gateway-1 | {"time_local":"02/Aug/2024:16:27:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/4b17c694-083a-4bf8-8c80-251556accca8 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.205","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"abcd639b5cf172c95858495d3442df56"} experiment-1 | {"level":"info","message":"DELETE /experiments/4b17c694-083a-4bf8-8c80-251556accca8 204 202ms","method":"DELETE","requestID":"abcd639b5cf172c95858495d3442df56","responseTime":202,"status":204,"url":"/experiments/4b17c694-083a-4bf8-8c80-251556accca8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 162ms","method":"POST","requestID":"26a55ddfd5ac8e431ebb712b24a13034","responseTime":162,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27:28 +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":"26a55ddfd5ac8e431ebb712b24a13034"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 160ms","method":"POST","requestID":"3b8918ce01fdc14e19694658c67c99f3","responseTime":160,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27:28 +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":"3b8918ce01fdc14e19694658c67c99f3"} gateway-1 | {"time_local":"02/Aug/2024:16:27:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2836","request_time":"3.498","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":"c9521d4e413efc811928a6a25ebf54f9"} gateway-1 | {"time_local":"02/Aug/2024:16:27:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3079","request_time":"5.912","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":"b45041fbb86ca70c411b6cc5a097bdd8"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/e828da9d-4214-4433-860e-dfcb2928bfda' closed"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442' closed"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a9efca93c220f9893b85116d1581522f","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":"a9efca93c220f9893b85116d1581522f","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","device":{"announcedAvailability":[],"codeUrl":"http://localhost/cloud_instantiable_device","connected":false,"description":"A JS test device","devices":[],"instantiateUrl":"http://localhost/edge_instantiable_device","isPublic":true,"name":"JS Device 1","services":[],"type":"device","url":"http://localhost/devices/2db9dd0b-3232-46a9-9b1e-5ba887b4c442"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"a9efca93c220f9893b85116d1581522f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 410 2ms","method":"POST","requestID":"a9efca93c220f9893b85116d1581522f","responseTime":2,"status":410,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"02/Aug/2024:16:27:28 +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":"a9efca93c220f9893b85116d1581522f"} authentication-1 exited with code 0 device-1 exited with code 0 authorization-1 exited with code 0 experiment-1 exited with code 0 federation-1 exited with code 0 forwarding-1 exited with code 0 gateway-1 exited with code 0